Witam,
Mój pierwszy post tutaj i trochę przydługi
@mirekk36
Od jakiegoś czasu używałem do moich zabaw jakiegoś chińczyka (kupiony parę lat temu do testów) na przemian z "Arduino as ISP" (Arduino IDE).
No i jakoś to działo, na chińczyka nie narzekałem, a "Arduino as ISP" to wiadomo
Jednak z pewnych względów wpadł mi w oko ATB-USBASP 4.2 i ostatnio go zakupiłem.
Świetne wykonanie itd itp, ale niestety mam pewien problem z nim.
Cytuj:
error: program enable: target doesn't answer. 1
Kiedy podłączę ATTiny841, to jestem w stanie odczytać go lub zaprogramować z pełną prędkością,
ale
tylko JEDEN RAZ, aż do odłączenia programatora z USB i ponownego podłączenia.
Kolejny odczyt nie powiedzie się do tego resetu via USB albo użycia komendy "-B 20".
Odłączanie procka od programatora nic nie zmienia. Reset na programatorze nic nie zmienia.
Już dla pewności testowałem w różnych portach USB, z różnymi egzemplarzami tego procka i z trzema różnymi zestawami przewodów (które działały wcześniej).
Dwa testy pod rząd po "resecie via USB" z konsoli Windows:
Cytuj:
avrdude -p attiny841 -c usbasp -P usb -u
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9315 (probably t841)
avrdude done. Thank you.
>avrdude -p attiny841 -c usbasp -P usb -u
avrdude: error: program 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.
Z ATTiny84 (czy 25) nie mam tego problemu, a żaden z moich ATTiny841 nie daje rady odczytać się (czy zaprogramować) dwa razy z rzędu z pełną prędkością.
Sam odczyt procka testowałem
- z mkAVR Calculator,
- z konsoli przez AVRDUDE,
- z Arduino IDE... no ale to też AVRDUDE.
Zasilanie z programatora (sam procek tylko podłączony).
Używam Win10.
Stare drivery chińskie wywalone (razem z plikami), a zainstalowane oczywiście te z mkAVR Calculator.
I działają ok.
AVRDUDE wgrany 6.3 (ten z linka który mirek gdzieś wskazywał, ale testowałem tez z innymi wersjami), config ustawiony dla tego procka i się generalnie programuje, ale wooooolno jak wspomniałem.
A Arduino IDE w wersji 1.8.12 tez z wgranym nowym AVRDUDE.
I to niby działa, ale musi być ustawiona niskie taktowanie albo rozłączanie USB i programatora.
Z chińczykiem nie miałem takiego problemu i nie pamiętam, ale nie był chyba taki szybki z t841 jak ten ATB-USBASP 4.2
A przy "-B 20" to ładuje mi około 12s, dłuuuuugo.
Jakieś pomysły? Kombinowałem na wszelkie mi znane sposoby i lipa.
Mam wrażenie, że po pierwszym dobrym szybkim połączeniu, programator nie jest już w stanie dostosować zegara i tylko "-B 20" zostaje.
Czy po prostu ten programator nie działa poprawnie z ATTiny841? Czy te procki są jakieś "inne", ale z chińczykiem działa (jest wolniejszy ?).
Znalazłem na poniższym forum, że w firmware USBASP był/jest jakiś bug, bo ktoś miał podobny problem, ale z innym prockiem
www.avrfreaks.net/forum/generic-usbasp- ... attiny1634i w drugim komentarzu wskazuje link do opisu miejsca problematycznego w firmware
www.avrfreaks.net/comment/838359#comment-838359i po korekcie softu niby działa za każdym razem, bez "resetu via USB"
W pierwszym linku:
Cytuj:
When using a generic USBASP with an ATtiny1634, communication with the device would only work for the first avrdude command issued, and would fail for every command after that. Read, write, scan, whatever. I could only use the device again if I disconnected and reconnected it. As you can imagine, it got a little annoying after a while.
In my case, it turns out that adding "-B12" to the avrdude options worked around the problem. Lower values didn't work reliably, and higher values did, but are slower
I potem w drugim linku niby rozwiązanie:
Cytuj:
And if I change
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
in usbasp's isp.c to
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
it works every time! Even with -B0.1 (1.5MHz, but it's not really faster that -B1).
No, ale nie mam dostępu do firmware tego programatora, więc nie zweryfikuję tego
Dzieki i sorki za przydługi post