Guten Abend,
Ich habe mir ein China USBasp Programmer gekauft.
Habe jetzt alle Pins angesteck und die Betriebsled leuchtet, doch wenn
ich ein Programm auf meinen Atmega328p bringen will bekomme ich
andauernd diese avrdude Fehlermeldung:
avrdude.exe: warning: cannot set sck period. please check for usbasp
firmware update.
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.
Ich habe mich in deutschen und englischen Foren umgeschaut und aber auch
die änderung der Taktfrequenz ändert nichts.
Ich habe den Verdacht, dass der Programmer älter ist als die
usbasp-Firmware vom Jahre 2011. Ich habe auch versucht diese zu löschen
aber sobald ich den Treiber deinstalleiren und den Programmer erneut
einstecke lädt sie sich wieder automatisch. Hat einer einen Plan wie ich
die Firmeware downgraden kann?
Kann es wirklich, dass sein oder liegt es an etwas anderem?
DANKE
antonius schrieb:> Ja, habe es sogar schon 10 mal gecheckt. Die müsste schon stimmen>> Double check connections and try again
Ja, dann trye es again.
;)
MfG Paul
Bei manchen Usbasp Programmern muss man ein -B60 anfügen, bzw mal nen
Quarz versuchen.
Anderen uc ausprobieren oder einfach nochmal neu verkabelt anstatt zu
checken.
antonius schrieb:> avrdude.exe: warning: cannot set sck period. please check for usbasp> firmware update.
... das machen die China-Clones alle (die haben ihre "eigene" Version
der Firmware, vor allen Dingen sind die mit einer Version versehen, die
auch AT89S52 flashen können - also keine AVRs sind - ).
Prinzipiell ist das allerdings für AVRDUDE nicht das Problem, eher, dass
ein brandneuer (und noch ungefuster) AVR langsam getaktet ist (die
meisten laufen mit einem 1 MHz Takt bei Fabrikauslieferung).
Wie oben bereits erwähnt wurde ist es sinnvoll, einen Parameter -B 10
oder -B 20 mit anzugeben.
Um einen USBasp neu zu flashen bedarf es eines weiteren Programmers und
auf der Platine des USBasp muss eine 2 pol. Jumperreihe (JP2)
nachbestückt werden, die den Reset des darauf enthaltenen ATmega8 mit
dem ISP Interface verbindet!
Auf diese Jumperreihe ist dann ein Jumper zu stecken um die Firmware des
China-Clones des USBasp neu aufzuspielen.
Ein Nachbestücken von JP3 (und ein aufgesteckter Jumper) reduziert den
ISP Clock für brandneue Chips.
Hallo antonius,
beim USBasp haben mir diese 2 Web-Sites geholfen:
+ http://www.fischl.de/usbasp/ << Original mit CAD
+ https://www.das-labor.org/w//Usbasp << Ugrade FW USBasp
mfg
Olaf
P.S.: bin umgeschwenkt auf Diamex All-AVR AVR-Programmer, bietet mehr
Funktionalität - kostet aber auch ein bißchen mehr!
Also ich weiß garnicht was alle mit den FWs haben.. Ich habe alte,
neue, billige für nen €,Teure,aus China sowie Deutschland und musste
noch nie die Firmware für Funktion flashen.
Alle Attiny85 oder Atmega88 basiert
Ralph S. schrieb:> Wie oben bereits erwähnt wurde ist es sinnvoll, einen Parameter -B 10> oder -B 20 mit anzugeben.
Das hilft doch aber absolut nichts, wenn die Firmware nicht
gewillt ist, den entsprechenden Parameter überhaupt zu akzeptieren –
und genau das sagt die Warnung aus.
p.s.: Ich würde das Ding als defekt zurückgeben. Das Feature zur
Modifikation der SCK-Periode ist im Jahr 2009 bei USBasp dazu
gekommen. Das sollte sich auch bis China allmählich rumgesprochen
haben.
p.p.s.: OK, ich würde gar keinen erst aus China kaufen, weil man
das Ding natürlich schneller selbst gebaut hat, als die Lieferung
aus China hierher braucht. ;-) Aber das ist was Anderes …
Soweit ich verstanden habe, gibt es drei Versionen von der Firmware, was
die Taktrate angeht:
a) Bei jungfräulichen AVR's muss man einen Jumper auftecken.
b) Bei jungfräulichen AVR's muss man den Parameter -B verwenden (z.B.
-B20). Der Jumper ist in diesem Fall nicht bestückt.
c) Der Programmer findet die ISP Taktfrequenz automatisch heraus. Der
Jumper ist in diesem Fall nicht bestückt und avrdude gibt immer eine
Warnung aus, dass er die Taktrate nicht beeinflussen kann.
Du siehst genau diese Warnung, also hast du die Variante c. Die darauf
folgende Fehlermeldung deutet einen Schaltungsfehler an.
In seltenen Fällen hängt sich ein AVR so gründlich auf, dass er über den
ISP Anschluss nicht mehr ansprechbar ist. Bei einigen AVR's kann man die
Taktrate per Software extrem reduzieren (auf unter 128kHz) und damit
kommt der USBASP in Variante b und c nicht klar.
In beiden Fällen hilft es, den Reset Pin mit GND anstatt mit dem
Programmieradapter zu verbinden. Dann startet das Programm auf dem AVR
nicht, so dass es das ISP Interface nicht stören kann.
Sollte das auch nicht gehen, hast du womöglich einen Kabelbruch. Du
könntest LED's (mit 1k Ohm Widerstand) an die Signal-Leitungen (SCK,
MISO, MOSI) anschließen um zu sehen, welche von denen "tot" ist.
Ich habe mich damals mit den USBasp voll in Unkosten gestürzt.
2 Stück, für zusammen 2 Euronen, incl. Flachband
Plus: 2 Adapter von 10 auf 6 Pol, für je 50 Cent.
Beide mit Jumper nachbestückt.
Bei einem die Firmware erneuert.
Jetzt habe ich einen, mit der alten Firmware, welchen ich per Jumper
langsamer machen kann, und einen welcher auf den AVRdude -B Parameter
reagiert.
Perfekt!
Beide tuns prächtig mit AVRdude zusammen.
antonius schrieb:> warning: cannot set sck period. please check for usbasp> firmware update.
Das ist eine Warnung, kein Error.
Man sollte sich die Meldung zu Herzen nehmen, aber sie ist dennoch kein
KO Kriterium.
Entweder neue Firmware drauf spielen, oder den Speed Jumper bestücken.
Für fabrikneue AVR muss die Geschwindigkeit gedrosselt werden.
> Entweder neue Firmware drauf spielen
Nein, die neueste Firmware (aus chinesischer Sicht) findet die Taktrate
automatisch heraus. Um die Warnung loszuwerden müsstest du eine ältere
Firmware installieren - aber dadurch wird nichts besser.
Stefan U. schrieb:> Nein, die neueste Firmware (aus chinesischer Sicht) findet die Taktrate> automatisch heraus.
Naja, dann hätten sie zumindest den Befehl zum Setzen der Taktrate
als Dummy implementieren können, um die Warnung zu vermeiden (und
dann die real ermittelte SCK-Rate zurückgeben auf Anfrage).
Davon abgesehen, traue ich solchen Automatismen nicht übern Weg. ;-)