Próbuję programować ATmega128 używając ATB-USBASP i MkAvrCalc
Po podłączeniu programatora do mikrokontrolera nawet jeżeli w zakładce Programator AVR nie wybiorę żadnego AVR to po kliknięciu "sprawdź podłączony AVR" program wykrywa ATmega128, odczytuje zaprogramowane fusy i przestawia się na odpowiedni mikrokontroler a AVRdude wyświetla:
Kod:
avrdude.exe: set SCK frequency to 2000 Hz
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.05s
avrdude.exe: Device signature = 0x1e9702
avrdude.exe: reading lfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\CIC\Documents\mkAVRCalculator\tmp_fuse_lo.hex"
avrdude.exe: reading hfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\CIC\Documents\mkAVRCalculator\tmp_fuse_hi.hex"
avrdude.exe: reading efuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\CIC\Documents\mkAVRCalculator\tmp_fuse_ex.hex"
avrdude.exe: reading lock memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\CIC\Documents\mkAVRCalculator\tmp_fuse_lock.hex"
avrdude.exe done. Thank you.
Compiled special for http://forum.atnel.pl (v5.11.1)
(slow SCK brak, Auto SCK speed zaznaczone)
W przypadku gdy chcę jednak wgrać jakiś program, zaznaczam Operacja AVR Zapis, Weryfikacja, rodzaj pamięci Flash i wybieram plik flash po kliknięciu WYKONAJ przeważnie 95% prób zapisu kończy się błędem
Kod:
avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude.exe done. Thank you.
Compiled special for http://forum.atnel.pl (v5.11.1)
mimo to, że tuż przed programowaniem oraz zaraz po potwierdzeniu tego błędu mogę ponownie kliknąć "Sprawdź podłączony AVR" i MkAvrCalc wykryje mikrokontroler bezbłędnie
pozostałe 5% prób (pomiędzy próbami zapisu nic nie zmieniam, jedyne co robię to potwierdzam bład i znów klikam "WYKONAJ" zapis do AVR) kończy się powodzeniem, program zostaje wgrany do AVR i procesor go wykonuje.
Co może być przyczyną, że mimo wykrywania AVR jego programowanie to loteria?
Problem pojawia się zarówno przy zasilaniu AVR z programatora jak i gdy jest zasilany zewnętrznie.
Piny do programowanie nie są dzielone z żadnymi innymi peryferiami, są wyłącznie podpięte do programatora. Jedynie do resetu podpięty jest przycisk
według schematu.
Sygnał zegarowy zewnętrzny 11.5920Mhz.
Fusebity Low CF, High D9, Extended FF, Lock 3F (Brown out detection 2.7V; przestawiony na zewnętrzny rezonator kwarcowy wysoka częstotliwość startup time 1k CK + 64ms; zablokowany JTAG, wyłączona kompatybilność z ATmega103)
Wersja MkAvrCalc 1.1.0 build 74