Forum: Mikrocontroller und Digitale Elektronik Problem mit USBasp


von Max (Gast)


Lesenswert?

Hallo,
ich habe mich in den letzten Tagen in die Welt der Microcontroller 
gewagt ;). Zuerst habe ich mir einen USBasp Bausatz gekauft und ihn 
zusammengebaut. Dieser funktioniert super und wird von meinem mac sofort 
erkannt. Auch die grüne Led leuchtet.
Nun habe ich eine kleine Schaltung mit 3 blickenden Leeds gebaut und den 
Code geschrieben. Soweit so gut.
Mit dem Cross Pack für Mac komme ich super zurecht und das "maken" 
meines Codes hat auch funktioniert. Allerdings erhalte ich beim flashen 
folgende Fehlermeldung:

avrdude -c USBasp -p attiny2313 -U flash:w:main.hex:i

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.

Also denke ich es liegt an der Verbindung zwischen ATtiny 2313 und dem 
Programme. Ich hab einfach das 10 Police Flachbandkabel mit Stecker auf 
eine Lochrasterplatine geführt. Dorrt Verbinde ich nun die einzelnen 
Pins des Kabels mit den entsprechenden Pins einer IC Fassung auf der nun 
der ATtiny sitzt. Die Pins sind nach Anleitung von Fischl verbunden. Ist 
diese Schaltung richtig? Benötige ich eine zusätzliche Stromversorgung 
oder ähnliches?

MfG Max

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Hallo Max, du benötigst bei einem USBasp normalerweise keine extra 
Stromversorgung, der Programmer versorgt den Mikrocontroller selbst mit 
Strom. Es könnte da aber ausnahmen geben... manche Nachbauten haben 
einen Jumper, um die Stromversorgung abzuschalten für die Fälle, in 
denen der Mikrocontroller in einer Schaltung steckt, die eine eigene 
Stromquelle besitzt.

Die von dir zitierte avrdude-Fehlermeldung bedeutet fast immer, dass 
entweder

- eines der Kabel nicht richtig angeschlossen wurde oder dass

- die Programmiergeschwindigkeit zu hoch ist.


Das Erste kannst du leicht selber prüfen, für das Zweite wähle bei 
avrdude die Option -B, also z.B.:  -B 300

(Beide Tipps müssten aber auch über die Forum-Suche zu finden sein.)

von Max (Gast)


Lesenswert?

Hey,
danke für deine Tipps ;) Mit der Suche hab ich mich ehrlich gesagt etwas 
schwer getan :(
Wenn ich die Geschwindigkeit ändere passiert mehr:


avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny2313 -c main.c -o main.o
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny2313 -o main.elf main.o
rm -f main.hex
avr-objcopy -j .text -j .data -O ihex main.elf main.hex
avr-size --format=avr --mcu=attiny2313 main.elf
AVR Memory Usage
----------------
Device: attiny2313

Program:     128 bytes (6.2% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)


avrdude -c USBasp -p attiny2313 -U flash:w:main.hex:i

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.

Allerdings am ende wieder der Fehler. Bedeutet das, dass er anfängt zu 
programmieren?

von Svenska (Gast)


Lesenswert?

Nein, es bedeutet, dass keine Verbindung zwischen USBasp und AVR 
besteht.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Svenska schrieb:
> Nein, es bedeutet, dass keine Verbindung zwischen USBasp und AVR
> besteht.

Genau. Oder dass die Programmiergeschwindigkeit zu hoch eingestellt ist. 
Wie schon geschrieben.

Also, lieber Max, bitte:

1. Verbindungen prüfen.

2. Programmiergeschwindigkeit runterdrehen (Option "-B").

Und danach vom Ergebnis berichten. :-)

von Achim M. (minifloat)


Lesenswert?

Max schrieb:
> mit 3 blickenden Leeds

Wohin gucken die denn?

Probier 'mal den Jumper für lagsame ISP-Frequenz. Der ATtiny2313 kommt 
fabrikfrisch mit 1MHz daher. Da braucht man eine ISP-Frequenz von 
≤250kHz.

Das Crosspack hat u.U. einen alten avrdude dabei, der das 
Frequenzeinstellen beim USBasp noch nicht beherrscht.

Ich hab mir über macports eine 11er-Version geholt, die auch hinreichend 
stabil ist.

Ach ja, zwar alt aber eine doch ganz komfortable GUI für avrdude fürn 
apfelrechner: http://www.vonnieda.org/software/avrfuses

mfg mf

von Max (Gast)


Lesenswert?

OK. Also die Verbindung ist geprüft. Ein Kontakt sah komisch aus. Ist 
korrigiert aber funktionieren tut es immer noch nicht. Dann das mit der 
Geschwindigkeit hat auch nichts gebracht...
Die LEDs sitzen ja in einer ganz anderen Schaltung.
Die Version des neusten Crosspacks entspricht der Version von MacPorts.

Leider ist mir grade beim ausstecken des Controllers ein Pin 
abgebrochen...
Ich kann also nicht weiter testen.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Max schrieb:
> Dann das mit der
> Geschwindigkeit hat auch nichts gebracht...

Welche Meldungen bringt avrdude denn jetzt? Er muss die 
Geschwindigkeitsänderung ja irgendwie kommentieren.

von Max (Gast)


Lesenswert?

Hey,
er spuckt dann halt zuerst das aus:


avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny2313 -c main.c -o main.o
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny2313 -o main.elf main.o
rm -f main.hex
avr-objcopy -j .text -j .data -O ihex main.elf main.hex
avr-size --format=avr --mcu=attiny2313 main.elf
AVR Memory Usage
----------------
Device: attiny2313

Program:     128 bytes (6.2% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)

Dann kommt das selbe wie vorher.

von Martin B. (martin_b35)


Lesenswert?

Das  sind Compilermeldungen. Die haben mit dem Problem nichts zu tun.
Gruss, Martin

von Max (Gast)


Lesenswert?

Hey,
das heißt er reagiert nicht auf die Geschwindigkeitsveränderung oder? 
Kann jetzt halt nicht mehr testen...

Max

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Max schrieb:
> Hey,
> das heißt er reagiert nicht auf die Geschwindigkeitsveränderung oder?

Ohne genaue avrdude-Meldungen kann man die Frage leider nicht 
beantworten.

> Kann jetzt halt nicht mehr testen...

Das ist natürlich doof. :-(  Da bleibt wohl nur, einen neuen 
Mikrocontroller zu besorgen. Schadet eh nicht, wenn man bei den billigen 
Dingern gleich zwei oder drei kauft – ein bisschen Schwund ist immer. 
;-)

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.