Guten Tag erstmal, ich hab mir ein paar Arduino nano´s übers Internet bestellt und wollte diese programmieren, doch leider funktioniert das nicht so wie ich das haben möchte :D Erstmal zudem was ich jetzt die letzten Tage schon probiert habe. 1) Den Bootloader via Arduino IDE programmiert/gebrannt --> hat auch funktioniert über USB 2) Ein Beispielprogramm "Blink" habe ich auch erfolgreich über USB programmieren können Jetzt möchte ich aber mein Arduino über die ISP Schnittstelle und mit AtmelStudio (mein Programm hab ich dort komplett programmiert) programmieren doch das klapppt leider nicht und so langsam verzweifel ich. Gaaanz am Anfang hab ich von einem Kollegen einen Arduino nano 168p ausgeliehen und den Beispielhaft programmiert und zwar so. pc --> STK500 --> ISP Kabel auf das Arduino gesteckt und das hat super funktioniert. Doch leider ist es jetzt bei meinen neuen Arduinos 328p so nicht möglich. Wenn ich also im AtmelStudio auf "Device Programming" klicke mein "Tool", Device und Interface auswähle und auf Apply klicke funktioniert noch alles doch sobald ich "Device signature" auslesen möchte kommt folgende Fehlermeldung. "Failed to enter programming mode. ispEnterProgMode: Error status received: Got 0xc0, expected 0x00 (Command has failed to execute on the tool) Unable to enter programming mode. Verify device selection, interface settings, target power, security bit, and connections to the target device." Woran könnte das liegen ? Gruß Matthias
1) Kann nicht sein. Die Programmierung über den USB Anschluss nuttzt den (normalerweise) vorinstallierten Bootloader. Der Bootloader kann sich aber nicht selbst überschreiben. Das geht nur über die ISP Schnittstelle. > Verify device selection, interface > settings, target power, security bit, > and connections to the target device. > Woran könnte das liegen ? Steht da doch! Zusätzlich würde ich mal prüfen, ob die ISP Taktfrequenz zur Taktfrequenz des AVr passt. Sie muss kleiner als 1/4 des AVR sein.
Matthias F. schrieb: > ich hab mir ein paar Arduino nano´s übers Internet bestellt und wollte > diese programmieren, doch leider funktioniert das nicht so wie ich das > haben möchte :D > > Erstmal zudem was ich jetzt die letzten Tage schon probiert habe. > 1) Den Bootloader via Arduino IDE programmiert/gebrannt > --> hat auch funktioniert über USB Nein. Das kann so wie du es schreibst nicht funktionieren. Wenn du den Arduino mit seinem USB-Anschluß an den PC hängst, dann redet der PC nur (und ausschließlich) mit dem Bootloader. Der Bootloader kann sich aber nicht selber überschreiben. > 2) Ein Beispielprogramm "Blink" habe ich auch erfolgreich über USB > programmieren können Dann ist zumindest ein funktionierender Bootloader auf deinem Arduino. Das ist schon mal ein Anfang. > Gaaanz am Anfang hab ich von einem Kollegen einen Arduino nano 168p > ausgeliehen und den Beispielhaft programmiert und zwar so. > > pc --> STK500 --> ISP Kabel auf das Arduino gesteckt > > und das hat super funktioniert. > > Doch leider ist es jetzt bei meinen neuen Arduinos 328p so nicht > möglich. Hast du den neuen Arduino denn auch per ISP-Kabel an ein STK500 (oder einen anderen ISP-Adapter) gehängt? Das geht aus deiner Beschreibung nicht hervor. > Wenn ich also im AtmelStudio auf "Device Programming" klicke ... > "Failed to enter programming mode. ispEnterProgMode: Error status > received: Got 0xc0, expected 0x00 (Command has failed to execute on the > tool) Das Atmel-Studio konnte nicht mit dem ISP-Adapter (vulgo: "Tool") reden. Zumindest kam nicht das erwartete zurück. Was mich zu der Vermutung führt, daß du den Arduino direkt - also ohne ISP-Adapter - an den PC gesteckt hast. So funktioniert das aber nicht. Einen Arduino kannst du ohne zwischengeschalteten ISP-Adapter nur über seinen Bootloader programmieren. Das geht durchaus auch für Programme, die im Atmel-Studio erzeugt wurden. Beispielsweise indem man avrdude als externes Flash-Programm einbindet und in avrdude den arduino Programmer auswählt. Oder man nimmt eine der unzähligen GUIs für avrdude.
Ich hatte das gleiche Problem mit den Arduino Nanos in Verbindung mit einem AVR ISP MK II. Grund war die Onboard LED des Nano, die an einem der ISP Pins hängt und deren Vorwiderstand war wohl zu niederohmig für den Programmer. Nach Entfernen der LED funktionierte es bei mir einwandfrei.
Matthias F. schrieb: > Jetzt möchte ich aber mein Arduino über die ISP Schnittstelle und mit > AtmelStudio (mein Programm hab ich dort komplett programmiert) > programmieren doch das klapppt leider nicht und so langsam verzweifel > ich. Warum nicht über den xloader http://russemotto.com/xloader/ das Programm laden. Basiert auf avrdude.
Axel S. schrieb: > Matthias F. schrieb: >> ich hab mir ein paar Arduino nano´s übers Internet bestellt und wollte >> diese programmieren, doch leider funktioniert das nicht so wie ich das >> haben möchte :D >> >> Erstmal zudem was ich jetzt die letzten Tage schon probiert habe. >> 1) Den Bootloader via Arduino IDE programmiert/gebrannt >> --> hat auch funktioniert über USB > > Nein. Das kann so wie du es schreibst nicht funktionieren. Wenn du den > Arduino mit seinem USB-Anschluß an den PC hängst, dann redet der PC nur > (und ausschließlich) mit dem Bootloader. Der Bootloader kann sich aber > nicht selber überschreiben. Ja das stimmt tut mir leid war mit dem Kopf nicht ganz bei Sache. Ich meinte es so das ich ein Arduino Uno hatte den ich mit der Software "ArduinoISP" bespielt habe (via USB --> Arduino UNO) und von dort aus dann den Bootloader via ISP auf den Nano programmiert/gebrannt habe > >> 2) Ein Beispielprogramm "Blink" habe ich auch erfolgreich über USB >> programmieren können > > Dann ist zumindest ein funktionierender Bootloader auf deinem Arduino. > Das ist schon mal ein Anfang. > >> Gaaanz am Anfang hab ich von einem Kollegen einen Arduino nano 168p >> ausgeliehen und den Beispielhaft programmiert und zwar so. >> >> pc --> STK500 --> ISP Kabel auf das Arduino gesteckt >> >> und das hat super funktioniert. >> >> Doch leider ist es jetzt bei meinen neuen Arduinos 328p so nicht >> möglich. > > Hast du den neuen Arduino denn auch per ISP-Kabel an ein STK500 (oder > einen anderen ISP-Adapter) gehängt? Das geht aus deiner Beschreibung > nicht hervor. ja den neuen Arduino Nano hab ich ebenfalls über das STK500 angesteckt >Ich hatte das gleiche Problem mit den Arduino Nanos in Verbindung mit >einem AVR ISP MK II. >Grund war die Onboard LED des Nano, die an einem der ISP Pins hängt und >deren Vorwiderstand war wohl zu niederohmig für den Programmer. >Nach Entfernen der LED funktionierte es bei mir einwandfrei. Ok werd ich mal rausmessen welche das genau ist und ausprobieren Danke nochmal für die schnellen Antworten Wenn alles nichts hilft werd ich mich nochmal melden bzw. wenn ich rausgefunden hab woran es gelegen hat ;) Und wenn jemanden noch was einfällt wäre es nice wenn er es posten würde ;) doch jetzt mach ich mich erstmal an die Sachen ran ;) Matthias
> Ich hatte das gleiche Problem mit den Arduino Nanos in Verbindung > mit einem AVR ISP MK II. > Grund war die Onboard LED des Nano, die an einem der ISP Pins hängt und > deren Vorwiderstand war wohl zu niederohmig für den Programmer. Dann hast du mit Sicherheit einen Fake gekauft. Der originale Programmer kann LED's mit 40mA "mit treiben".
Der Arduino "RESET" ist mit einem Widerstand von 1k an VTG ageschlossen. Das STK500 zieht bei ISP-Programmierung den Reset auf GND aber nicht beim Nano, wegen eben diesem 1k Widerstand. Abhilfe schafft eine Transistorschaltung, die in die Resetleitung eingewchleift wird. Also Leitung RST unterbrechen, 2 Transistoren opfern, 8,2k aus Richtung STK500 an Basis1 anschließen, Kollektor mit 8,2k gegen VTG anschließen, Zweite Transistorbasis an Kollektor anschließen, Kollektor 2 an RST vom Nano anschließen, beide Emitter an GDN, schon läßt sich der Nano sicher über ISP programmieren.
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.