ISP Programmierung - AVRDUDE Fehlermeldung

OP #2837989
Lesenswert?

Hallo zusammen,
ich habe eine Schaltung gebaut, auf der ich einen ATMEGA8515 über ISP 
programmieren will. Wenn ich versuche das Programm auf den Controller zu 
Spielen bekomme ich folgende Fehlermeldung:
1
avrdude -p atmega8515 -P /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0 -c stk500    -U flash:w:dart.hex 
2

3
avrdude: stk500v2_command(): command failed
4
avrdude: initialization failed, rc=-1
5
         Double check connections and try again, or use -F to override
6
         this check.
7

8

9
avrdude done.  Thank you.
10

11
make: *** [program] Fehler 1

Als Programmer benutze ich ein STK500 und die Software zum übertragen 
ist AVRDUDE. Bei der Fehlersuche habe ich mehrere Spannungen direkt an 
den Pins am Zielcontroller angeschaut. An VCC liegen 5V an. RST wird 
während des Programmiervorgangs auf GND gezogen. An SCK und MOSI sind 
irgendwelche Signale zu sehen. Der Zielcontroller wird also mit allem 
versorgt, reagiert aber nicht darauf. Am Portpin MISO passiert 
garnichts.

Um zu testen ob der Controller hinüber ist hab ich ihn nochmal aufs 
STK500 gesetzt. Dort lässt er sich einwandfrei programmieren. Hab grad 
keine Idee mehr wo der Fehler noch liegen könnte und im Netz hab ich 
auch nichts gefunden.

Gruß
Michael
Angehängte Dateien:
OP #2838046
Lesenswert?

An den Fuses habe ich noch nichts verändert (zumindest nicht bewusst). 
In die Thematik habe ich mich noch nicht eingearbeitet. Aber als Default 
müsste der 8515 mit dem Internen RC-Oszillator laufen.

Die ISP-Frequenz versuch ich gleich mal zu verändern. Daran hab ich 
bisher auch noch nichts gemacht. Das müsste ja mit der Option -i <N> im 
Makefile gehen.
Angehängte Dateien:
OP #2838083
Lesenswert?

So, die Versuche die ISP-Frequenz zu verändern waren wenig erfolgreich. 
Ich hab leider keine genauere Beschreibung finden können wie die 
Frequenz richtig einzustellen ist. Nur dass man mit 10 anfangen kann und 
dann ausprobieren...

Getestet wurden:
1, 2, 3, 5, 8, 10, 20, 100, 1000

Die Option wurde wie folgt ins Makefile eingetragen:
1
AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) -i 10
2
AVRDUDE_FLAGS += $(AVRDUDE_NO_VERIFY)
3
AVRDUDE_FLAGS += $(AVRDUDE_VERBOSE)
4
AVRDUDE_FLAGS += $(AVRDUDE_ERASE_COUNTER)
OP #2838135
Lesenswert?

Welchen Wert soll ich hinter -B eintragen? Die Default Taktfrequenz 
liegt bei 1MHz. Die Periodendauer beträgt also 1µs. Mit -B 1 gibts 
folgende Fehlermeldung:
1
avrdude -p atmega8515 -P /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0 -c stk500    -B 1 -U flash:w:dart.hex 
2
avrdude: stk500v2_set_sck_period(): p = 1.0 us too small, using 1.1 us
3

4
avrdude: stk500v2_command(): command failed
5
avrdude: initialization failed, rc=-1
6
         Double check connections and try again, or use -F to override
7
         this check.
8

9

10
avrdude done.  Thank you.
11

12
make: *** [program] Fehler 1
OP #2838643
Lesenswert?

Mit -b 10, 15, 20, 30, 40, 60, 80, 100 & 1000 funktionierts schonmal 
nicht. Da kommt immer die gleiche Fehlermeldung.

Aber kann es eigentlich überhaupt an der ISP-Frequenz liegen? auf dem 
STK500 funktioniert der Programmiervorgang ja. Ich ändere nur die 
Peripherie um den Zielcontroller. Der ISP-Programmer auf dem STK bleibt 
unverändert. Und wenn der Controller auf dem STK sitzt arbeitet er ja 
genauso mit seinem internen RC-Oszillator.

@tt2t:
Der Stecker ist nicht gespiegelt, sondern um 180° gedreht verschaltet. 
Darauf dass es richtig herum gedreht ist hatte ich beim zeichnen nicht 
geachtet, da es ja eh nichts ausmacht.
OP #2838903
Lesenswert?

So,
habe mich nun in das Auslesen und Setzen der Fuses eingearbeitet. Die 
Fuses hatten doch nicht mehr den Default Zustand. Als Taktgeber war 
External Clock eingestellt. Dann ists klar dass es nicht funktioniert. 
Nachdem die Fuses wieder auf den internen RC-Oszillator eingestellt 
waren lies sich der Controller auch auf dem selbstgebauten Board 
programmieren. Die ISP-Frequenz musste ich nicht verändern.

Danke für die Tipps
Michael

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren