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 ustawić fusebity w Atmega 16 dla zewnętrznego kwarcu 16MHz?

kubek107 30 Maj 2007 10:15 6581 11
REKLAMA
  • #1 3935099
    kubek107
    Poziom 13  
    Posty: 126
    Pomógł: 1
    Ocena: 3
    Witam mam problem z atmegą 16. A mianowicie nie mam zielonego pojęcia jak zaprogramować fusebity tak aby atmega korzystała z zewnętrznego kwarcu 16MHz. Przejrzałem forum i po zmianach fusebitów na proponowane na forum zwaliła mi się atmega (a raczej 3 Atmegi). Proszę o sprawdzone kombinację fusebitów dla kwarcu zewnętrznego 16MHz najlepiej dla programów bascom lub pony prog. Z góry wielkie dzięki za odpowiedzi. Pozdrawiam.
  • REKLAMA
  • #2 3935157
    Klima
    Poziom 31  
    Posty: 1535
    Pomógł: 112
    Ocena: 180
    Ale zauważyłeś, że "zaptaszkowanie" danego bitu w PonyProg oznacza nastawienie jego wartości na "0"? Brak ptaszka oznacza "1".
  • REKLAMA
  • #3 3935221
    kubek107
    Poziom 13  
    Posty: 126
    Pomógł: 1
    Ocena: 3
    Tak wiem o tym. Proszę tylko o konkretne ustawienia bitów dla zewnętrznego kwarcu 16MHz.
  • REKLAMA
  • #4 3935405
    dziechu
    Poziom 27  
    Posty: 1609
    Pomógł: 27
    Ocena: 71
    Chyba powinno byc CKOPT z ptaszkiem (zaprogramowane czyli 0) i wszystkie CKSEL bez ptaszka (1). Mozesz tez kliknac BODEN i BODLEVEL - bedzie bezpieczniej startowal.

    Dodano po 5 [minuty]:

    Ustawienie BODEN i BODLEVEL zabezpiecza tez dane EEPROM przed przypadkowym skasowaniem, procesor jest wstrzymany kiedy napiecie przy wlaczaniu/wylaczaniu jest ponizej 4V, wtedy procesor nie wykonuje przypadkowych rozkazow. Oczywiscie BODLEVEL ustawiasz kiedy masz zasilanie procka 5V.

    Uwazaj tez na kondensatorki przy kwarcu, mialem procesory (choc byly to PIC) ktore przy 27pf nie startowaly. Zmniejszenie ich do 15pf rozwiazalo problem.
  • #5 3935465
    kubek107
    Poziom 13  
    Posty: 126
    Pomógł: 1
    Ocena: 3
    Ja mam dane 22pF. Ale jesteś pewien tych ustawień bo atmega taka tania nie jest.
  • REKLAMA
  • #7 3935587
    shg
    Poziom 35  
    Posty: 2289
    Pomógł: 339
    Ocena: 135
    Będzie działać, u siebie też mam takie ustawienia i nie ma najmniejszych problemów.
    Nawet jak nie ruszy z kwarcem (w co wątpię), to i tak większość kombinacji fusów umożliwia uruchomienie procesora z zewnętrznym generatorem (do XTAL1), nawet jak zaprogramowany jest na pracę z kwarcem, czy rezonatorem ceramicznym.
  • Pomocny post
    #8 3935847
    dziechu
    Poziom 27  
    Posty: 1609
    Pomógł: 27
    Ocena: 71
    kubek107 napisał:
    Ja mam dane 22pF. Ale jesteś pewien tych ustawień bo atmega taka tania nie jest.


    Ale przeciez nie zniszczyles ich fusami:) Podepnij jakis kwarc 1MHz i musza ruszyc pod programatorem, chyba ze zupelnie gdzie indziej masz blad i dlatego nie ruszaja.
  • #9 3936181
    slomek83
    Poziom 12  
    Posty: 61
    Pomógł: 1
    bardzo dobra stronka do konfiguracji fuse bitow:

    Link
  • #10 3937089
    Klima
    Poziom 31  
    Posty: 1535
    Pomógł: 112
    Ocena: 180
    Fajna stronka!
    A autorowi pytania przypominam, że ustawienia fusebitów zegara znaleźć można w nocie katalogowej w dziale "System Clock and Clock Options" - zawsze warto sprawdzić, czy to, co znajdzie się w internecie zgadza się z zawartością zamieszczonych tam tabelek.
  • #11 3941127
    kubek107
    Poziom 13  
    Posty: 126
    Pomógł: 1
    Ocena: 3
    Dziękuję za wszystkie odpowiedzi. Problem tkwił w tym że kwarc znajdował się za daleko od Atmegi (około 3 cm) po przesunięciu atmega się programowała bezbłędnie. Oprócz tego nie wiedziałem że trzeba ustawić porty wyświetlacza w Bascomie. Poprawne ustawienie fusebitów dla kwarcu 16MHz to CKOPT = 0 i CKSEL = 1111. Koledzy czytałem note katalogową. Czemu odrazu przyjmujecie że macie do czynienia z ciemniakiem?? Ustawiałem fusebity z noty i nic nie pomagało. Temat uważam za zamknięty. Następnym razem proszę okazywać więcej życzliwości pytającemu. Pozdrawiam.
  • #12 3941751
    Klima
    Poziom 31  
    Posty: 1535
    Pomógł: 112
    Ocena: 180
    No tak, ale nie dałeś nam szans, żebyśmy się o tym dowiedzieli, że walnąłeś kwarc 30mm od układu scalonego. To raczej rzadki przypadek, bo zwykle daje się kwarc bezpośrednio przy układzie.

Podsumowanie tematu

✨ Dyskusja dotyczyła prawidłowego ustawienia fusebitów w mikrokontrolerze Atmega16 dla pracy z zewnętrznym kwarcem 16MHz. Zalecane ustawienia to CKOPT zaprogramowany na 0 (z ptaszkiem w PonyProg) oraz CKSEL ustawione na 1111 (bez ptaszka), co odpowiada konfiguracji dla zewnętrznego kwarcu wysokiej częstotliwości. Dodatkowo sugerowano włączenie BODEN i BODLEVEL dla stabilniejszego startu i ochrony EEPROM przy napięciu zasilania 5V. Problemy z uruchomieniem Atmegi wynikały nie z błędów fusebitów, lecz z fizycznego umiejscowienia kwarcu – zbyt duża odległość (około 3 cm) powodowała brak stabilnego taktowania. Po przesunięciu kwarcu bliżej mikrokontrolera układ działał poprawnie. Wskazano także na konieczność odpowiedniego ustawienia portów wyświetlacza w Bascomie. Podkreślono, że fusebity należy zawsze weryfikować w nocie katalogowej w sekcji "System Clock and Clock Options".
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA