Dzień dobry.
Mam problem, który z czasem dotyka pewnie każdego amatora AVR, mianowicie zmieniłem fusebitami źródło taktowania na wewnętrzny oscylator 128kHz. Utraciłem przez to możliwość komunikacji. Przejrzałem wiele wątków (głównie po angielsku - sam język nie jest problemem ale nadal nie trafiłem). Wiem, że trzeba zmniejszyć częstotliwość taktowania programowania do 1/4 częstotliwości procesora ( czyli 128kHz / 4 )
Tylko nadal nie wiem jak to zrobić. MKavrcalculator, Sinaprog, Eclipse z pluginem do AVR - żaden z tych nie wykrywa mojej atmegi. Nie jest to wina połaczeń. Na pewno jest sposób jak to zrobić.
Nigdy nie używałem avrdude z poziomu terminala ale kopiując komendy z MKavrcalculator i jakieś z internetu próbowałem ustawić fusebity, tylko że nadal nie wykrywa mi Atmegi. Może można tą zmniejszoną częstotliwość taktowania wpleść w komendę avrdude razem z ustawieniammi fusbitów? Jaka to może być komenda?
Programator to usbasp.
Tutaj przykład tego co już próbowałem:
Kod:
C:\Users\Adam>avrdude -p atmega644p -c usbasp -P usb -V -u -U lfuse:w:0x62:m -U
hfuse:w:0xD9:m
avrdude: warning: cannot set sck period. please check for usbasp firmware update
.
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Ten warning (cannot set sck period) był odkąd pamiętam i nigdy nie przeszkadzał w programowaniu AVRów.
Bardzo proszę po pomoc. Wiem, że to nic trudnego ale straciłem już cały dzień na to.