Hallo Leute, ich komme mit dem ArduinoISP nicht weiter. Ich schreib mal was ich gemacht habe: Arduino IDE 1.05 für Windows gestartet und das Beispiel ArduinoISP auf den einen UNO gespielt. Meldung: Binäre Sketchgröße: 5.492 Bytes (von einem Maximum von 32.256 Bytes) Arduino IDE beendet. AVR Burn-O-Mat gestartet und alle möglichen Einstellungen durchprobiert. Der ArduinoISP wird nur mit folgenden Einstellungen fehlerfrei angesprochen. Programmer: arduino (Arduino) Port: Com14 //wie in der Arduino IDE Wenn ich den µC vom Arduino-Board (ATmega328P) einstelle und ein Read Flash/EEPROM mache funktionierts. Folgende Ausgabe erscheint: C:\WinAVR-20100110\bin\avrdude.exe -C C:\WinAVR-20100110\bin\avrdude.conf -p m328p -P com14 -c arduino -D -U flash:r:D:\Install\Treiber\USBasp-Firmware\Original\OldUSBasp_Firmware.h ex:i avrdude.exe: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% -0.00s avrdude.exe: Device signature = 0x1e950f avrdude.exe: reading flash memory: Reading | ################################################## | 100% 4.71s Aber ich will ja nicht den Arduino-Chip auslesen, sondern einen an den Leitungen MOSI, MISO, SCK, BP2->RST, GND, VCC angeschlossenen m8. Also stelle ich diesen bei AVR-Typ ein. Das lesen des m8 gelingt aber nur, wenn ich den Parameter -F an avrdude übergebe. Die Ausgabe sieht dann folgendermassen aus: C:\WinAVR-20100110\bin\avrdude.exe -C C:\WinAVR-20100110\bin\avrdude.conf -p m8 -P com14 -c arduino -D -U flash:r:D:\Install\Treiber\USBasp-Firmware\Original\OldUSBasp_Firmware.h ex:i avrdude.exe: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude.exe: Device signature = 0x1e950f avrdude.exe: Expected signature for ATMEGA8 is 1E 93 07 Double check chip, or use -F to override this check. Woher weiss ich jetzt, ob der UNO die Daten des m8 geliefert hat und nicht die des UNO? Mit BASCOM kommt, egal welchen Chip ich einstelle die Meldung: Detected Micro does not match the selected... Kann jemand helfen? Michael
> Aber ich will ja nicht den Arduino-Chip auslesen, sondern einen an den > Leitungen MOSI, MISO, SCK, BP2->RST, GND, VCC angeschlossenen m8. Also > stelle ich diesen bei AVR-Typ ein. Das klappt so nicht. Der Typ gibt nur an, welchen AVR der Programmer erwartet, nicht wie der angeschlossen ist. Mit dem Argument -c arduino wird der Bootloader des Arduino benutzt, und du kannst nur den Arduino beschreiben. Um den Arduino als ISP zu benutzen, musst du -c avrisp benutzen. Damit wird nur der externe Chip angesprochen. > Der ArduinoISP wird nur mit folgenden Einstellungen fehlerfrei angesprochen. > Programmer: arduino (Arduino) Falls -c avrisp nicht klappt, würde ich als Erstes auf falsche Verbindungen zwischen den Arduino und dem Mega8 schliessen. Ist der externe Mega8 richtig beschaltet? Mit Kondensatoren?
Folgende Seite sollte alle deine Fragen beantworten: http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm
Vielen Dank an euch beide! eure Tipps waren sehr hilfreich. Auf der Kommandozeile hat alles Reibungslos funktioniert. Wenn ich in Burn-O-Mat den avrisp eingestellt habe, kam immer eine Fehlermeldung: avrdude.exe: stk500_getsync(): not in sync: resp=0x00 Vielleicht hätte ich in den "additional Options" unter Settings noch ein bischen herumexperimentieren sollen. Benutze ich die Kommandozeile cmd.exe nach der Anleitung im Link, kann ich die Kommandos nacheinander ohne Probleme ausführen. Allerdings musste ich nach jedem Aufruf die Resettaste am UNO drücken. Bei mir ging das folgendermassen: Windows Startmenü -> ausführen cmd.exe -> <Enter> cd /D C:\WinAVR-20100110\bin - wechselt in das avrdude-Verzeichnis von WinAVR avrdude.exe -P COM14 -b 19200 -c avrisp -p m168 -n - gibt mir den Status des zu flshenden ICs aus avrdude.exe -P COM14 -b 19200 -c avrisp -p m168 -u -U flash:w:"D:\Elektro\Projekte\Komponententester\svn\transistortester\Soft ware\trunk\mega168_strip_grid\TransistorTester.hex":i - schreibt den Flash-Speicher mit entsprechenden Statusmeldungen avrdude.exe -P COM14 -b 19200 -c avrisp -p m168 -u -U eeprom:w:"D:\Elektro\Projekte\Komponententester\svn\transistortester\Sof tware\trunk\mega168_strip_grid\TransistorTester.eep":i - Schreibt in den EEPROM Das Auslesen der Fuse-Bits habe ich wie folgt gemacht: avrdude.exe -P COM14 -b 19200 -c avrisp -p m168 -u -U efuse:r:efuse.hex:r -U hfuse:r:hfuse.hex:r -U lfuse:r:lfuse.hex:r Prinzipell läuft der µC schon in der Zielschaltung. Jetzt muss ich nur noch prüfen, ob die Fuses schon richtig eingestellt sind. Vielen Dank zunächt noch mal. Michae
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.