Hallo. Ich versuche einen Atmega48 mittels einen serielllen isp zu proggen. Das Testprog habe ich im avrstudio gestestet. Wenn ich es nun mit avrdude runterladen will kommt folgende Fehlermeldung ---------------------------------------------------------------------- > "make.exe" program Creating load file for EEPROM: test.eep avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \ --change-section-lma .eeprom=0 --no-change-warnings -O ihex test.elf test.eep || exit 0 c:\WinAVR-20070525\bin\avr-objcopy.exe: there are no sections to be copied! avrdude -p atmega48 -P com1 -c avrisp -U flash:w:test.hex avrdude: stk500_getsync(): not in sync: resp=0x00 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51 avrdude done. Thank you. make.exe: *** [program] Error 1 > Process Exit Code: 2 > Time Taken: 00:23 ----------------------------------------------------------------------- wenn ich es mit ponyprog versuche, sagt es mir folgendes: "Device missing or unkown device (-24)" Habe alle ports im Bios mal duchprobiert (habe nur ein com-port) Was mach ich falsch? Ich bitte um Hilfe, komm nicht mehr weiter.
Es gab ca. 2005 Probleme mit neuer STK500-Firmware in AVRISPs und damaligen AVRDUDE... Versionen, die den gleichen Fehler (avrdude: stk500_getsync(): not in sync: resp=0x00) produzierten. Kannst du näheres zu deinem AVRISP (Selbstbau?, Gekauft?) und den verwendeten Programmen (Versionen? Downloadquelle?) schreiben?
Probier doch mal "stk500v2" als Programmer (-c), "avrispv2" wäre ein Alias dafür.
Ich nutze einen selbstgebauten 10-poligen seriellen isp, denn ich von meinen prof habe, der dem ähnlich sieht (die Ausgänge sind identisch): http://elmicro.com/files/olimex/avr-pg1b.pdf Nutze folgende WinAvr Version: WinAVR-20070525 Quelle: http://sourceforge.net/projects/winavr/. Ich habe einfach die befürchtung, dass der Atmega48 nicht kompatibel mit einem seriellen isp ist. Jörg Wunsch wrote: > Probier doch mal "stk500v2" als Programmer (-c), "avrispv2" wäre > ein Alias dafür. Hab schon alle möglischen Programmer versucht. Ging alles nicht
Ach Schreck, das ist das dumme alte Ponyprog-Interface. Im avrdude heißt es ponyser. Das ist so ziemlich die mickrigste Option, die man sich vorstellen kann, in Bezug sowohl auf Datenrate als auch Zuverlässigkeit. Mit einem AVRISP hat das alles absolut nichts zu tun. Das ist ein von Atmel gebautes Teil mit eigenem Controller. > Ich habe einfach die befürchtung, dass der Atmega48 nicht kompatibel mit > einem seriellen isp ist. Selbstverfreilich kann man einen ATmega48 mit ISP programmieren. "Seriell" ist an deinem ISP-Adapter nur der Name der Schnittstelle, bzw. genau genommen ist ISP immer seriell. Die RS-232-Schnittstelle wird aber gruselig als Bit-Bang-Maschine missbraucht.
Amir B-a wrote: > Und wat mack ick jetzte Koof d'r 'n ordendlich'n brogrammer. :-) Hast du denn mal -c ponyser ausprobiert? Hast du noch 'nen Parallelport frei? Die Parallelport-ISP-Bitwackler sind meiner Erfahrung nach ein Stück stabiler als das Teil hier. Ansonsten gibt's Infos zu solchen Programmiergeräten wie Sand am Meer. Ich kann dir aus eigener Erfahrung zum Beispiel noch sagen, dass Matthias Weißers USBisp ganz gut funktioniert, siehe http://www.matwei.de/ .
Komisch mit dem ponyser krig ich nun eine andere Meldung und zwar : -------------------------------------------------------------------- > "make.exe" program Creating load file for EEPROM: test.eep avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \ --change-section-lma .eeprom=0 --no-change-warnings -O ihex test.elf test.eep || exit 0 c:\WinAVR-20070525\bin\avr-objcopy.exe: there are no sections to be copied! avrdude -p atmega48 -P com1 -c ponyser -U flash:w:test.hex avrdude: AVR device not responding avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude done. Thank you. -------------------------------------------------------------------- wird woll alles darauf hinaus laufen meinen prof zu boxen und mir einen anständigen progger zu besorgen. Danke aber für deine Muhe
Um zu gucken, ob das Teil überhaupt irgendwas redet, kannst du noch MOSI und MISO am ISP-Stecker brücken (Pin 1 und 9, wenn du den 10-poligen Stecker hast) und avrdude mit -vvvv aufrufen. Du solltest dann das Echo der "programming enable"-Sequenz sehen.
wie ruf ich den avrdude denn mit der option -vvvv auf? nehm normalerweise die makefile (programmers notebook -> make program)
Nun, du hast doch den Kommandoaufruf oben selbst zitiert:
1 | avrdude -p atmega48 -P com1 -c avrisp -U flash:w:test.hex |
Mach stattdessen:
1 | avrdude -p atmega48 -P com1 -c ponyser -vvvv |
Das -U <file> kannste weglassen, da wir uns ja sicher sind, dass er sowieso nicht programmieren können wird. Ohne weitere Anweisungen, was avrdude denn tun soll, wird es nur einmal die Verbindung zum AVR mittels ISP aufbauen und sich danach beenden. Genug, um auf die Weise die Kommunikation zu testen.
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.