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

[Rozwiązano] Atmega8 zawieszona po zmianie wewnętrznego zegra na 4MHz

240sx 07 Paź 2019 14:42 390 2
REKLAMA
  • #1 18206550
    240sx
    Poziom 10  
    Posty: 361
    Ocena: 65
    Pięknie działająca, fabrycznie ustawiona, Atmega8 przestała się odzywać po mojej pierwszej zmianie prędkości oscylatora wewnętrznego z 1Mhz -> 4MHz.

    Zrobiłem to poleceniem: avrdude -p m8 -c bsd -U lfuse:w:0x3C:m

    Komunikaty głosiły, że się zapisało i od tego czasu Atmega się nie odzywa.
    Wcześniej avrdude informował o następująco ustawionych fuse-ch: E:FF, H:D9, L:E1

    Czy jest sposób na ożywienie układu?

    ml.

    Dodano po 2 [minuty]:

    W miejscu prawidłowo wpisanej wartośic pojawił się emotikon :-)

    Napisze jeszcze raz ze spacją: E:FF, H: D9, L:E1

    Dodano po 20 [minuty]:

    W miejscu prawidłowo wpisanej wartośic pojawił się emotikon :-)

    Napisze jeszcze raz ze spacją: E:FF, H: D9, L:E1
  • REKLAMA
  • Pomocny post
    #2 18206600
    JarekC
    Poziom 32  
    Posty: 1513
    Pomógł: 231
    Ocena: 399
    A dlaczego chciałeś wpisać wartość 0x3C?
    Aby zmienić wewnętrzny oscylator z 1 na 4Mhz powinieneś wpisać wartość 0xE3 do LowFuse.

    Wpisując wartość 0x3C spowodowałeś:
    - zmanię na zewnętrzny Crystal/Rezonator Mediem Freq.
    - włączenie Brown-out z poziomem 4V

    Aby móc ponownie go zaprogramować musisz dołączyć zewnętrzny kwarc (1-3Mhz) i kondensatory (12-22pF).

    Kalkulator Fuse Bits jest dostępny tutaj:
    http://www.engbedded.com/fusecalc
  • #3 18211905
    240sx
    Poziom 10  
    Posty: 361
    Ocena: 65
    Tak właśnie się stało: podłączyłem kwarc o oznaczeniu CQ3.6864 i procesorek działa.

    Mam nadzieje, że podana przez kolegę wartość fuse-a dla zegra wewnętrznego 4Mhz też zaskoczy.
    Dziękuję za pomoc.
    ml.
REKLAMA