Hallo, Ich bin neu im bereich MC Programmierung. Vor 10 Jahren ahbe ich zwar mal z80 Programmiert aber das nur auf fertigen Versuchsanordnungen... Ich habe heute meinen USBasp Bausatz bekommrn und gleich aufgebaut. nun habe ich ein Problem wenn ich versuche meinen ATmega8 zu programmieren. Ich habe am USBasp den jumper 3 gesetzt um die Geschwindigkeit zu drosseln. Ebenso habe ich schon mehrere Stunden Google bemüht. Aber ich komme über folgenden Punkt nicht hinaus: >avrdude -p m8 -c usbasp -v avrdude: Version 5.10, compiled on Jan 19 2010 at 15:10:54 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Documents and Settings\perpa15\ sktop\New Folder\New folder\avrdude-5.10-win\avrdude.conf" Using Port : lpt1 Using Programmer : usbasp AVR Part : ATMEGA8 Chip Erase delay : 10000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW M W ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- --- --------- eeprom 4 20 128 0 no 512 4 0 900000 0xff 0xff flash 33 10 64 0 yes 8192 64 128 450000 0xff 0x00 lfuse 0 0 0 0 no 1 0 0 200000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 200000 0x00 0x00 lock 0 0 0 0 no 1 0 0 200000 0x00 0x00 calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude: auto set sck period (because given equals null) 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. Ich benutze den neuesten USB-Treiber und AVRdude 5.10 Die minimalbeschaltung des MC habe ich bereits zwei mal erneuert, ohne Erfolg. Zur Verwendung kommt der interne Takt. Leider bin ich nun am Ende meiner Weisheit angekommen. Vieleicht habe ich in meiner Unwissenheit etwas übersehen? Dank und Gruß Patrick
Brenner schrieb: > Using Port : lpt1 ??????? > > müsste da nicht usb rein? Stimmt, aber ändert leider nichts.
Hast du denn "libusb" installiert? Wenn nicht: Windows requires a driver for USBasp: usbasp-windriver.2009-02-28.zip (70 kB) u.a. zu finden auf: http://www.fischl.de/usbasp/
Ja, die neueste Version ist installiert und wird auch unter Geräte angezeigt. Die Grüne LED am Gerät leuchtet auch wie gewünscht.
also bei mir gibg es erst mit avr studio 2009, da 2010 das nicht unterstützt. Nimm doch Avr burn o mat. Das ist einfacher (und ich kann dir besser helfen).
Patrick Perl schrieb: >> müsste da nicht usb rein? > > Stimmt, aber ändert leider nichts. Dann schicke mal bitte ein Log mit -vvvv (aber bitte als Anhang, das ist lang). Du kannst das Log in eine Datei umleiten mit: avrdude ... 2> logfile.txt
Hallo Jörg, komischer Weise, wollte er das > oder >> nicht annehmen... aber ging auch so ;)
Naja, sehr gesprächig ist Thomas Fischls Code wohl nicht. :-/ Hast du auf dem Teil eigentlich eine aktuelle Firmware drauf? Hast du ein Oszilloskop, mit dem du nachsehen kannst, ob an den Ausgangspins (SCK, /RESET, MOSI) sich überhaupt etwas tut?
Angeblich ist es die aktuelle Firmware. Ein Oszilloskop habe ich leider nciht hier :( Meinst du ob sich seitens der Quell oder seitens der Zielschaltung was tut?
>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 USBASP läuft mit zu hoher Taktrate für die intern 1 MHZ getakteten Mega8 Dafür gibt es den "Slow SCK" Jumper, den setzen dann sollte es gehen
Da gebe ich dir recht. Das wäre Jumper 3 aber den habe ich bereits gebrückt. Ich habe auch bereits versuche den ATmega8 in der Zielschaltung zu ersetzen, leider ohne Erfolg.
Patrick Perl schrieb: > Ein Oszilloskop habe ich leider nciht hier :( Kennst du vielleicht jemanden, der sowas hat? > Meinst du ob sich seitens der Quell oder seitens der Zielschaltung was > tut? Ja, um erst einmal zu sehen, ob du ein Hardwareproblem hast mit dem USBasp. Für den allerersten Anfang würde sicher sogar ein Monoflop mit angeschlossener LED genügen um zu sehen, ob an SCK da Impulse angewackelt kommen.
Kannst du mal ein Bild (.jpg) von deiner Zielhardware machen oder sie beschreiben? Du schreibst nämlich nicht, wo du den USBasp abgeschlossen hast. Grund: avrdude: error: programm enable: target doesn't answer. 1
>> Ein Oszilloskop habe ich leider nciht hier :( > Kennst du vielleicht jemanden, der sowas hat? Der nächste wäre 40km weg :( >> Meinst du ob sich seitens der Quell oder seitens der Zielschaltung was >> tut? > Ja, um erst einmal zu sehen, ob du ein Hardwareproblem hast mit > dem USBasp. > > Für den allerersten Anfang würde sicher sogar ein Monoflop mit > angeschlossener LED genügen um zu sehen, ob an SCK da Impulse > angewackelt kommen. meinst du eine LED mit Vorwiederstand tät es auch oder wäre die zu träge?
Nimm mal einen Atmega der mit >= 8Mhz Quarz läuft. Bei mir ist es als so das es mit 1Mhz manchmal auch nicht klappt, auch mit langsam Jumper. Ich setzte dann immer die Quarz Fuse und programmiere ihn dann mit einem 8Mhz Quarz. Niedrigeres hab ich leider noch nicht probiert.
Brenner schrieb: > Kannst du mal ein Bild (.jpg) von deiner Zielhardware machen oder sie > beschreiben? > Du schreibst nämlich nicht, wo du den USBasp abgeschlossen hast. > Grund: > avrdude: error: programm enable: target doesn't answer. 1 Ich habe das ganze auf einem Steckbrett zusammengebaut, da ich dort die fertige Schaltung erstmal testen möchte. übernommen habe ich folgendes Schaltschema: http://www.fundf.net/usbasp/pic/simple_mega8.png
Also bei mir ist es so: Usbasp nicht angschlossen:
1 | avrdude.exe: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc |
Kein µC:
1 | avrdude.exe: error: programm enable: target doesn't answer. 1 |
2 | avrdude.exe: initialization failed, rc=-1 |
Benutz mal einen 8Mhz Quarz für den programmierenden µC. Die letztere Fehlermeldung heißt das der µC nicht antwortet.
Mangels quarz habe ich an jede leitung mal eine LED gesetzt. Sobald strom da ist liegt spannung an MISO. Wenn ich versuche mit swm MC zu kommunizieren, ändert sich allerdings nichts. Ohne USB Verbindung läuchten alle 4 LEDs Ein Bild der Schaltung anbei
Achso du hast gar kein anderes Programmiergerät außer den Usbasp. Hm... Ich würde dir empfehlen aus einem Transitor und 3 Widerständen einen Seriell / Parallel Programmer zu basteln (schau dir mal das Atmel Evalutions Board von Pollin an da wird das auch so gemacht). Quarz allein bringt dir nichts du musst die Fuse setzen. Oder vielleicht kann man die Programmiergeschwindigkeit noch mehr über software senken. Ich setzte immer erst über mein Board die Quarzfuse (oder wie die heißt) und programmiere dann über Usbasp. Und wenn die grüne usbasp led leuchtet, funktioniert er. Dann kann hardwaremäßig nur noch was von Usbasp Ausgang zu µC falsch sein.
am Seriallen Anschluß hapert es leider auch ;) Deswegen habe ich mich für eine USB Lösung entschieden Weder mein PC noch der Laptop haben noch einen Com-Port :( Hätte ich den mit einem ATmega16 bessere Karten? Wobei der 8er genau das ist was ich für meine Schaltung brauche...
Hi Ob das bei deinem Problem hilt, weiss ich nicht. Aber zwischen VCC und GND gehören möglichst nah am µC Abblockkondensatoren. MfG Spess
Ich hab das nochmal ausprobiert. Komisch mit meinem neuen Mega8L funktioniert das, dabei hätte ich schwören können, das vor ein paar Wochen das mit dem normalen Mega8-16 nicht funktioniert hat. Egal. Überprüfe nochmal deine Schaltung von Usbasp-ISP zum ISP des µCs, da muss der Fehler liegen. Nutzt du eigentlich eine Pfostenbuchse? Ich hab bei meinem Usbasp diese falsch eingelötet. Damit das dann passte musste ich ein bisschen schnitzen ;)
oh ok, ich dachte die beiden in der Spannungsversorgung sind ausreichend?
Ich hab schon oft gelesen das es mit oder ohne geht. Auch schon das einer dran muss. Ich hab bisher immer einen benutzt und hab keine Probleme gehabt. Und die 5cent sinds doch wert, oder?
Samuel K. schrieb: > Ich hab das nochmal ausprobiert. Komisch mit meinem neuen Mega8L > funktioniert das, dabei hätte ich schwören können, das vor ein paar > Wochen das mit dem normalen Mega8-16 nicht funktioniert hat. Egal. > > Überprüfe nochmal deine Schaltung von Usbasp-ISP zum ISP des µCs, da > muss der Fehler liegen. Nutzt du eigentlich eine Pfostenbuchse? Ich hab > bei meinem Usbasp diese falsch eingelötet. Damit das dann passte musste > ich ein bisschen schnitzen ;) Ich habe am 10 Poligen Kabel zum MC hin einzelne Anschlüsse gelötet Welche pfostensteckbuchse meinst du am USBASP? Ich benutze den Bausatz Fischl.de
Ich weiß nicht wie der von Fischl ist - ich hab die SChaltung von Ulrich radig genommen. Allerdings deutlich kleiner als die fertige Platine ist aufgebaut. Prüf einfach mal ob die Anschlüsse richtig zum µC gehen. Ich vermute das ist falsch. Mach aber erst mal einen 100nF zw. Vcc und GND, so nah wie geht an den µC.
Samuel K. schrieb: > Ich hab schon oft gelesen das es mit oder ohne geht. Auch schon das > einer dran muss. Ich hab bisher immer einen benutzt und hab keine > Probleme gehabt. Und die 5cent sinds doch wert, oder? Stimmt schon ;) War eine Fehleinschätzung meinerseits. Habe nochmal 2 die ich noch hatte eingesetzt aber ohne Änderung.
Wenn du die 4 Kabel zum µC richtig hast, dürfte der µC nicht funktionieren, bzw. falsch angeschlossen sein. Überprüfe deine Schaltung nochmal auf z.b. Spannungsversorgung, richtige Pinbelegung... Achja hast du reset mit PullUp auf Vcc? EDIT: OK, Pinbelegung müsste stimmen, Pullup auch. Also wenn die SPannungsversorgung stimmt, dann ist er entweder kaputt oder ichweiß nicht mehr weiter.
Patrick P. schrieb: > Wenn ich versuche mit swm MC zu kommunizieren, ändert sich allerdings > nichts. Das ist nicht unnormal. Die Impulse sind so kurz, dass du davon nichts merkst. Wenn schon, dann müsstest du sie mit einem Monoflop verlängern, aber wenigstens ein primitiver Oszi wäre einfach mal besser.
> avrdude -p m8 -c usbasp -v
avrdude -p m8 -c usbasp -P USB:xx -v
avrdude -p m8 -c usbasp -P USB:xx -F
LG Jens
Jens schrieb: >> avrdude -p m8 -c usbasp -v > > avrdude -p m8 -c usbasp -P USB:xx -v > avrdude -p m8 -c usbasp -P USB:xx -F > > LG Jens Hi Jens, ändert leider nichts. >avrdude -p m8 -c usbasp -P USB:xx -F avrdude: error: programm enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 avrdude: AVR device initialized and ready to accept instructions avrdude: Device signature = 0x000000 avrdude: Yikes! Invalid device signature. avrdude: Expected signature for ATMEGA8 is 1E 93 07 avrdude done. Thank you. >avrdude -p m8 -c usbasp -P USB:xx -v avrdude: Version 5.10, compiled on Jan 19 2010 at 15:10:54 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Documents and Settings\perpa15\De sktop\New Folder\New folder\avrdude-5.10-win\avrdude.conf" Using Port : USB:xx Using Programmer : usbasp AVR Part : ATMEGA8 Chip Erase delay : 10000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW Max W ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- --- -- --------- eeprom 4 20 128 0 no 512 4 0 9000 90 00 0xff 0xff flash 33 10 64 0 yes 8192 64 128 4500 45 00 0xff 0x00 lfuse 0 0 0 0 no 1 0 0 2000 20 00 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 2000 20 00 0x00 0x00 lock 0 0 0 0 no 1 0 0 2000 20 00 0x00 0x00 calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude: auto set sck period (because given equals null) 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. avrdude done. Thank you. Am MC sollte es nciht liegen, ich habe mittlerweile 3 Stück getestet.
Patrick P. schrieb: > Am MC sollte es nciht liegen, ich habe mittlerweile 3 Stück getestet. Dann wird's wohl an deinem USBasp liegen, wobei die Firmware ja zumindest prinzipiell läuft, denn sie redet auf dem USB.
Ja das fürchte ich auch, ausser alle 3 MCs wurden defekt geliefert... (stammen aus einer Lieferung) Ich versuche momentan zugang zu einem Oszilloskop und/oder einem anderen MC zu bekommen. Viel Dank ;D
Mit der Firmware aus usbasp.2009-02-28.tar.gz habe ich mich auch schwer getan. Dort wird abhängig von dem Bitclock entweder Hardware-SPI oder Software-SPI verwendet. Hardware-SPI war i.o. Bei der Software-Version erfolgte die Datenübernahme auf der verkehrten Flanke und die delay-Routinen lieferten mit meinem gcc auch nur Müll. Also Flanke umgedreht und delay-Routinen von avr-libc verwendet, und schon sah die Software-SPI am LogicAnalyzer wie eine skalierte Hardware-SPI aus. Zudem gab es ein weiteres Problemchen, und zwar wude beim "enter programming" zur Synchronisation der SCL gepulst. Dies ist auch richtig für ältere AVRs, bei dem von mir verwendeten Mega88 und Mega32 muss jedoch die Resetleitung gepulst werden.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.