Forum: Mikrocontroller und Digitale Elektronik Atmel Studio und ICE erkennt nicht Arduino due


von Andreas W. (andy_w)


Lesenswert?

Hallo,
ich habe Atmel Studio auf Windows 7 installiert, habe den Atmel ICE 
Programmieradapter und daran hängt der Arduino Due. Momentan ist ein 
kleines Testprogramm an der Reihe, das die LED blinken läßt.

Manchmal geht es, das Programm selber funktioniert also. Ganz große 
Probleme gibt es aber mit den ICE Programmieradapter. Oft erkennt er 
nicht den Ardunino Due, da hift werder Abstecken des ICE noch Power 
Off/On des Arduino. Das einzige, was hilft, ist ein längeres Drücken der 
Erasetaste auf dem Arduino, danach ist natürlich das Flash auch 
gelöscht.

Nach dem Flashen läuft das Programm fast nie los. Manchmal hilft im 
Debugger "Run", manchmal muß der Arduino erneut Power bekommen, manchmal 
geht es erst nach mehreren Versuchen. So richtig reproduzierbar ist das 
nicht. Danach kann ich aber wieder nicht neu flashen, weil der ICE den 
Arduino wieder nicht erkennt...

Der ICE ist im Atmel Studio auf den richtigen Prozessortyp eingestellt 
und auf "JTAG". Das ist ja auch offensichtlich richtig, da nach einem 
Erase der Arduino wieder erkannt wird. Power bekommt der Arduino 
entweder über 5V von den Pins, wenn er eingebaut ist, beim Testen über 
USB über den "native USB", nicht über den USB zum Programmieren mit der 
Arduinosoftware.

Blöde ist nur, daß im eingebauten Zustand die Erasetaste nicht mehr 
erreichbar ist. Jedesmal den Arduino ausbauen, wenn ich ihn neu 
programmieren will, ist keine Option, er steckt mit allen Pins in 
Stiften und Steckern einer anderen Leiterplatte und ist daher nur sehr 
schwer auf- und abzustecken. Da ich jetzt mit der Softwareentwicklung 
beginne, muß ich sehr oft neu flashen. Mit einem Fädeldraht die Leitung 
vom Erasetaster herausführen, so daß ich den Erase auch im eingebauten 
Zustand auslösen kann, wäre als letzte Alternative noch möglich.

Aber hat jemand eine Idee, warum der Arduino nach dem Flashen vom ICE 
nicht mehr erkannt wird? Ich bekomme nur noch "device not found" als 
Fehlermeldung. Power ist da, der ICE erkennt als Prozessorspannung 3.3V.

Das fertige Gerät wird eine Universalfernbedienung mit Touchscreen, aber 
das hat nichts mit diesem Problem zu tun, da es auch im nicht 
eingebauten Zustand des Arduino auftritt.

Gruß

von Andreas W. (andy_w)


Lesenswert?

Hallo,
offensichtlich hängt das auch mit den Fuses zusammen. Und zwar mit den 
GPNVM-Bits. Mit einem kann man festlegen, ob der Boot vom ROM oder vom 
Flash erfolgt. Defaultmäßig steht er auf "ROM". So startet nach dem 
Flashen das Programm nicht. Erst nach Start des Debuggers ohne Debug 
(CTRL+ALT+F5) und anschließend "Continue" (F5) läuft das Programm - aber 
danach wird der Arduino nicht mehr vom ICE erkannt. Setze ich die Fuse 
auf "Flash", läuft gleich das Programm, die LED blinkt sofort. Aber auch 
dann erkennt der ICE den Arduino nicht mehr. Für ein erneutes Flashen 
muß ich dann die Erasetaste am Arduino betätigen. Ebenso geht natürlich 
auch kein Debug.

Eine brauchbare Doku zu der Problematik konnte ich bisher nicht finden 
und scheinbar ist dieses Problem auch noch sonst nirgendwo besprochen 
worden, ich fand jedenfalls bisher nichts.

Gruß

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
Noch kein Account? Hier anmelden.