Forum: Mikrocontroller und Digitale Elektronik Atmega16+USBtinyISP+Avrdude


von David H. (huaf)


Angehängte Dateien:

Lesenswert?

Hallo!

Habe ein Problem mit meinem Atmega16. Wenn ich diesen mit dem USBtinyISP 
verbunden habe und mit Avrdude versuche zu initialisieren, bekomme ich 
immer wieder diese Meldung:


C:\Users\David Lappi>avrdude -c usbtiny -p m16

avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done. Thank you.


bzw.


C:\Users\David Lappi>avrdude -c usbtiny -p m16 -F

avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept istructions
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
avrdude: Expected signature for ATMEGA16 is 1E 94 03

avrdude done. Thank you.



Habe das Board schon mehrmals auf Verdrahungsfehler hin kontrolliert.
Den Schaltungsaufbau seht ihr im Anhang. Ich habe den MAX232 weggelassen 
da ich nur über ISP programmiern möchte.
Der Treiber für den USBtinyISP dürfte auch passen 
(usbtinyisp_libusb-win32_1.2.1.0) sonst würde ja wohl die Zeile:
"avrdude: AVR device initialized and ready to accept istructions"
nicht angezeigt werden, oder?
Ich verwende Windows 7 und habe WinAVR-20100110 installiert.

USBtinyISP: 
http://cgi.ebay.at/USBtinyISP-AVR-ISP-Arduino-Bootloader-programmer-/250853442666?pt=LH_DefaultDomain_77&hash=item3a6807c46a



Da ich mich schon das ganze Wochenende mit dem Problem herumschlage und 
kein Stück mehr weiter komme bitte ich euch um drigende Hilfe!

Danke!

von Uwe (de0508)


Lesenswert?

Welches Programm verwendest Du zum Programmieren des AVR?

Ich habe schon viele WinOS gehabt, die einfach die falschen Treiber, 
resp. Software verwendet hatte.

Bitte mach mal ein Bild vom Gerätemanager, indem man erkennt, ob der USB 
Adapter läuft.

Mit welchen Parametern wird avrdude aufgerufen und welche Version ist 
es?

Hier habe ich dazu einen Artikel geschrieben:

http://www.qrpforum.de/index.php?page=Thread&postID=50192#post50192

.

von bingo (Gast)


Lesenswert?

> Welches Programm verwendest Du zum Programmieren des AVR?

steht doch oben: AVRDUDE, die Meldung von AVRDUDE zeigt ja auch, dass 
der Adapter erkannt wird und nur der AVR nicht.

Das Problem könnte in der Taktfrequenz liegen, bau mal ein -i xxx ein, 
wobei xxx Werte zwischen 20 und 100 sinnvoll sind.

von Ingo W. (Gast)


Lesenswert?

bingo schrieb:

> Das Problem könnte in der Taktfrequenz liegen, bau mal ein -i xxx ein,
> wobei xxx Werte zwischen 20 und 100 sinnvoll sind.

wenn der USBTINY oder USBASP als Adapter genutzt werden, wird der 
Schrittakt im AVRDUDE mit -B [Periodendauer in Mikrosekunden] 
eingestellt, der genannte Wertebereich erscheint auch hier sinnvoll.
mfG ingo

von bingo (Gast)


Lesenswert?

> wenn der USBTINY oder USBASP als Adapter genutzt werden, wird der
> Schrittakt im AVRDUDE mit -B [Periodendauer in Mikrosekunden]

Du hast recht: -B ist beim USBtiny richtig.

von David H. (huaf)


Lesenswert?

Danke erst mal für die schnellen Anworten!
Werde mal versuchen den Schritttakt im AVRDUDE einzustellen.
Melde mich heute abend nochmal ob es geklappt hat!

von David H. (huaf)


Lesenswert?

Guten abend!


Habe nun wie vorgeschlagen B wahlweise auf 20,50 und 100 gestellt.
Leider ohne Erfolg:


C:\Users\David Lappi>avrdude -c usbtiny -p m16 -B 100

avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done. Thank you.



Uwe S. schrieb:
> Welches Programm verwendest Du zum Programmieren des AVR?
>
> Ich habe schon viele WinOS gehabt, die einfach die falschen Treiber,
> resp. Software verwendet hatte.


Habe mir deinen Link angesehen, ich denke nicht das ich einen atTiny2313 
besitze. Dazu nochmal der Link: 
http://cgi.ebay.at/USBtinyISP-AVR-ISP-Arduino-Bootloader-programmer-/250853442666?pt=LH_DefaultDomain_77&hash=item3a6807c46a


Hat jemand noch Ideen was man sonst noch probieren könnte?
Bin für jede Hilfe sehr dankbar.

von Uwe (de0508)


Lesenswert?

Hallo David,

wie soll ich das verstehen ?

USBtinyISP beschreibt einen USB ISP Programmer, der auf dieser 
Veröffentlichung basiert:

- http://www.ladyada.net/make/usbtinyisp/

und dort wird ein tiny2313 verwendet, wie auch bei Ebay auf dem Bild zu 
sehen ist !

Ich habe auch einen USBtinyISP mit attny85 gebaut, den man hier finden 
kann.

- Beitrag "AVR USBtinyISP Programmer mit atTiny85"

Des weiteren habe ich die Firmware für diesen USBtinyISP

- http://www.ehajo.de/Bausaetze/AVR-ISP-Stick?referid=5

auf die neue Hardware angepasst.

Du musst Dir nicht von mir helfen lassen und kannst gerne weiter herum 
stochern bevor du systematisch vorgehst.

Bin dann weg.

von David H. (huaf)


Lesenswert?

So habe jetzt das Board nochmal neu gemacht (geätzt und nicht mit 
Lochraster) damit ich einen Verdrahtungsfehler (kalte Lötstelle etc. 
...) ausschließen kann. Werde heute Abend wieder mal versuchen das Ding 
zum laufen zu bringen...
Bin auch schon am Überlegen mir einen neuen USB-ISP Adapter zu kaufen- 
was wäre hierbei empfehlenswert? Welcher Programmieradapter funktioniert 
mit Atmel am besten- wahrscheinlich der AVR ISP MKII...?

von David H. (huaf)


Lesenswert?

Habe am Wochenende den Atmega 16 zum laufen gebracht, mit dem neu 
geäzten Board und dem neuen USBISP Adapter (AVR ISP MK2).
Der Adapter ist wirklich empfehlenswert. Ich programmiere nun mit AVR 
Studio 5 was relativ einfach zu handeln ist.
Nun bin ich auf ein neues Thema gestoßen und zwar ist die 
Speicherkapazität des Atmega 16 ja sehr schnell ausgereizt...
Da ich aber nicht schon wieder ein Board ätzen will ist meine Frage wie 
kann man den Quellcode optimieren um Speicher zu sparen?
Was sollte man unbedingt vermeiden?
Ich verwende auch die Funktion ms_delay(time in ms) und viele 
for-schleifen...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.