logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O

e1_rybcia 19 Lis 2009 07:33 6536 30
REKLAMA
  • #1 7280048
    e1_rybcia
    Poziom 11  
    Potrzebuje pin nr 1 w atmega8 jako wejście. Programuje w Bascomie programatorem równoległym, jednak nie mogę ustawić reset jako we/wy. Jaka jest składnia rstdisbl - nie działa. w ustawieniach nie ma fusbitów. Proszę o pomoc.
  • REKLAMA
  • #3 7280131
    sp3ots
    Poziom 38  
    Witam !
    Przypomnienie:
    Jeśli przeprogramujesz reset na I/O to nie będziesz miał dalszej możliwości programowania programatorem ISP, pozostanie programator równoległy.
    Pozdrawiam. Stefan
  • #4 7280218
    e1_rybcia
    Poziom 11  
    sp3ots Po co to piszesz żeby mieć punkty. Umiesz czytać. Przeczytaj jeszcze raz co napisałem. Zastanów się i jeśli znasz odpowiedź to ją napisz. Dziękuje.
    Jezu na wszystkich postach jest ta sama odpowiedz ludzie jeśli nie macie nic ciekawego do powiedzenia to nie piszcie.
  • #5 7280234
    PiotrPitucha
    Poziom 34  
    Cześć
    Przestaw w fusach RSTDISBL, to on decyduje czy masz na końcówce RST czy I/O, o ile mi wiadomo z poziomu programu tego nie da się zrobić.
    Piotr

    Ps. nie rozumiem Twojej uwagi że w ustawieniach nie ma fusów, raczej niemożliwe by programator nie obsługiwał ustawień fusów, jeśli tego nie ma to zawsze możesz ustawić to byle jakim programatorem.
  • #6 7280337
    e1_rybcia
    Poziom 11  
    Dzięki właśnie tego się obawiałem że z programu nie da się zrobić. Program piszę w bascom avr, a tam nie widzę żadnych "fus-bitów". Programuje avrpp.exe ale poszukam jeszcze innego rozwiązania. dzięki
  • #7 7280370
    snow
    Poziom 31  
    Jak nie ma jak są.

    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
  • REKLAMA
  • #8 7281008
    Terminator
    Poziom 23  
    Nie słyszałem żeby BASCOM obsługiwał programator równoległy. To,że programator jest podłączony do portu równoległego to nie znaczy,że jest on równoległy.

    No ale jeśli programujesz programatorem równoległym to dlaczego masz problem z zmianą tego fusebita ?
    Cytat:
    When programming the RSTDISBL Fuse Parallel Programming has to be used to change fuses or perform further programming.
  • #9 7281066
    e1_rybcia
    Poziom 11  
    Ok dzięki za informację idę do domku i posprawdzam co z tego wyjdzie.
    Odpowiedz: terminatora - Nie programuje w bacomie- tylko napisałem w nim program plik wynikowy .hex programuje avrpp.exe ale najpierw muszę ustawić reset jako I/O.
  • #10 7282060
    Konto nie istnieje
    Poziom 1  
  • #11 7284568
    e1_rybcia
    Poziom 11  
    Dzięki emarcus, dziś będę miał więcej czasu to wypróbuje Twoje rady. Zdenerwowałem się bo czytałem wcześniejsze posty i zawsze było tak samo. Ludzie pytali jak wykorzystać reset a odpowiedź zawsze była taka sama. Dlatego napisałem że nie korzystam z ISP tylko równoległego. Tutaj w tym temacie jest dopiero pierwsza odpowiedź jak to zrobić a temat był poruszany kilkanaście razy. Denerwuje się bo próbuje zbudować swój sterownik od 4 lat. Brak czasu remont mieszkania rodzina dzieciaki. W końcu się wziąłem na poważnie i dałem sobie miesiąc. Został mi jeszcze tydzień.
  • #12 7298299
    e1_rybcia
    Poziom 11  
    Niestety wasze rady nie pomogły. Snow: mam wersję demo więc nie mam tej strony. emarcus: niestety miewa się to do programatorów isp i stk a ja takich nie mam. Ale posiedziałem troszkę i tym programem który używam avrpp.exe mam fusy. tylko nie umiem napisać poprawnej składni.
    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
    Jak widzicie odczytać mogę pyta się o włożenie scalaka i odczytuje, następnie:
    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
    usiłuje zapisać ale na to nie odpowiada. po prostu uruchamia program nic nie robiąc. Jak zapisać w bin żeby odczytał?
  • Pomocny post
    #13 7298541
    zumek
    Poziom 39  
    e1_rybcia napisał:
    ... tylko nie umiem napisać poprawnej składni.

    W/g autora programu, składnia wygląda następująco np.-fl10101010, czyli bez spacji po "-fl". Zajrzyj do pliku avrx32_e.txt
  • REKLAMA
  • #14 7298576
    e1_rybcia
    Poziom 11  
    zumek- dzięki czytałem rano patrzyłem i nie widziałem!!!!!!
  • #15 7302447
    e1_rybcia
    Poziom 11  
    Nowy problem: Nie uruchamia się program. Po włączeniu zasilania mam kwadraty na LCD.
    Fuse L00001110
    fuse H01001001
    kwarc 10Mhz 2 x C - 39p. Nie mam resetu. W jaki sposób doprowadzić program do uruchomienia się?
  • #16 7307107
    e1_rybcia
    Poziom 11  
    Już zgłupiałem. O co chodzi? zwykły najprostszy programik, nie chcę się kompilować może być przyczyną brak drukarki- cały czas mi o tym przypomina.
    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
    Dlaczego wykazuje błąd?
  • #17 7309126
    janbernat
    Poziom 38  
    Czyli tak było:
    "sp3ots Po co to piszesz żeby mieć punkty. Umiesz czytać. Przeczytaj jeszcze raz co napisałem. Zastanów się i jeśli znasz odpowiedź to ją napisz. Dziękuje.
    Jezu na wszystkich postach jest ta sama odpowiedz ludzie jeśli nie macie nic ciekawego do powiedzenia to nie piszcie."

    A teraz 2x tak jest:
    "Nowy problem: Nie uruchamia się program. Po włączeniu zasilania mam kwadraty na LCD.
    Fuse L00001110
    fuse H01001001
    kwarc 10Mhz 2 x C - 39p. Nie mam resetu. W jaki sposób doprowadzić program do uruchomienia się?"

    "Już zgłupiałem. O co chodzi? zwykły najprostszy programik, nie chcę się kompilować może być przyczyną brak drukarki- cały czas mi o tym przypomina. "

    Nie brak drukarki -chociaż trzeba ja zainstalować- a brak wyobraźni i przekonanie o własnej nieomylności doprowadza do stanu gdy trzeba kupić nowy procesor.
  • #18 7309415
    Konto nie istnieje
    Poziom 1  
  • Pomocny post
    #19 7310723
    sp3ots
    Poziom 38  
    Witam !
    Przetestowałem ten kod:
    
    $regfile = "m8def.dat"
    $crystal = 1000000
    Config Lcd = 20 * 4
    Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc , E = Portc.4 , Rs = Portc.5
    
    Lcd "witam!"
    Fourthline
    Lcd "4"
    End
    

    i wszystko jest OK, program się kompiluje
    Prawdopodobnie powodem nie kompilowania się Twojego kodu jest brak linii:
    $regfile = "m8def.dat"
    Prawdopodobnie w Bascomie - opcje... masz zaznaczony procesor który
    nie posiada Portu C np. ATtiny2313
    Pozdrawiam. Stefan
    ps. punktów nie potrzebuję za to chleba nie kupię !
  • REKLAMA
  • #20 7311244
    e1_rybcia
    Poziom 11  
    Janbernat- :) Niestety nie masz racji procesor miewa się dobrze. Nie wiedziałem że ludzie są tak zawistni.
    Sp3ots ma rację - tego brakowało dzięki - sorki że tak napisałem ale oczekiwałem pomocy a nie kazania. Programator mam sprawny i wiem co chcę osiągnąć, nie wiem tylko jak.
    Ale niestety to nie koniec problemów jest troszkę lepiej, kompiluje się.
    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
    To znaczy po włączeniu zasilania kwadraty na lcd stały się bardziej widoczne. Jednakże cały czas są. Normalnie korzystałem z bascoma i willema programowałem i wgrywałem program razem z ustawieniami bascoma - były kompatybilne. Teraz wgrywam innym programem więc ustawień w bascomie nie zgrywam. Muszę je napisać w programie. coś jeszcze brakuje jakiegoś odwołania do pliku? A może jednak ustawienia fusów. Ale kombinowałem na wszystkie sposoby i jest to samo. Procesor sprawny kompiluje się odczytuje poprawnie. Problem w resecie- bo go nie ma. Może trzeba jakoś wzbudzić procesor. (Ja mu tylko podaje zasilanie na Vcc)
  • #21 7311315
    sp3ots
    Poziom 38  
    Witam !
    Brak schematu powoduje zadawanie być może banalnych pytań:
    Czy podciągnąłeś SCL i SDA do +5V (4,7K) z doświadczeń wiem że brak tych rezystorów powoduje zatrzymanie programu.
    Powodzenia życzę. Stefan
  • #22 7311377
    e1_rybcia
    Poziom 11  
    Żadne pytania nie są banalne a te najbardziej oczywiste często naprowadzają na przyczyny złego działania. Najtrudniejsze usterki są banalne i oczywiste. Odpowiem Ci że nie podciągnąłem ponieważ scl(PC.5)=Rs lcd a SDA (PC.4)=E lcd. (ale nie na 100%) jutro pokaże schemat ponieważ mam go w domu na 2 kompie. Może faktycznie popełniłem gafę. Moje pierwsze programowanie atmegi8. Do jutra dziękuje Stefan za śledzenie tematu. Mam nadzieje że inne osoby również skorzystają z moich błędów i nie będą ich popełniać.
  • #23 7311426
    sp3ots
    Poziom 38  
    Z foto listingu wynika że SDA - Pd4, SCL to Pd3, a nie Pc4 i Pc5
    LCD podłączyłeś do portu C.
  • #24 7311579
    e1_rybcia
    Poziom 11  
    tak zgadza się sorki, źle spojrzałem. Nie pamiętam sprawdzę jutro. Ale wgrałem prosty programik który pokazuje tylko na lcd "czesc", tam też są tylko kwadraty więc oprócz tego musi jeszcze coś być nie tak.
  • #25 7315104
    e1_rybcia
    Poziom 11  
    Jak zaprogramować atmega 8 w Bascomie pin reset jako I/O
    Mój schemat może gdzieś w nim popełniłem błąd.
  • #26 7315276
    sp3ots
    Poziom 38  
    Witam !
    LCD podłączony jest zgodnie z programem.
    Może fise bity dotyczące rezonatora ustawiłeś na generator Zewnętrzny ?
    Pozdrawiam. Stefan
  • #27 7315364
    e1_rybcia
    Poziom 11  
    fusy L01011111
    fusy H01001001
    kwarc 10Mhz zmienię jeszcze na 6Mhz może coś zmieni
    wtedy
    fusy H01011001
    ckopt będzie na 1 na razie jest na 0
  • #28 7315373
    sp3ots
    Poziom 38  
    Chodzi o fuse bit L 0101XXXX te Xy to część od generatora.
  • #29 7315378
    e1_rybcia
    Poziom 11  
    Mam kondensatory 39n a powinno być 22pF przy procesorze może to jest przyczyna?

    Dodano po 2 [godziny] 25 [minuty]:

    Moja pomyłka musi być 22pF.
  • #30 7326346
    e1_rybcia
    Poziom 11  
    Znalazłem przyczynę. Nie wlutowałem diody d11! A procesor bez zasilania kiepsko chodzi! Tyle zmarnowanego czasu. Przepraszam wszystkich i dziękuje. Wszystko chodzi, z tymi fusami to nie taka straszna sprawa. Jeśli źle ustawisz i tak chodzi ale czasem nie do końca jak się chce. Wywaliłem reset i kwarc (chodzi z wewnętrznego) programik się wysypywał ale dlatego że miał nieustalone stany na przyciskach. Podciągnąłem końcówki przycisków do rezystorów z zasilaniem i się uspokoiło. Wszystko działa tak jak należy. Jedyna rzecz to program do dopracowania. wniosek:
    Od początku wszystko było ok.
REKLAMA