Forum: Compiler & IDEs Arduino Code auch ohne primitiv-Hilfsmittel (Serial) debug-bar?


von Möchtegerndebugger (Gast)


Lesenswert?

Als hardware-lastiger de-facto Software-Laie (gegenüber meinen
Big Embedded Software Profis (MPC8260 etc)) sehe ich dass meine
Kollegen zum Debuggen eigentlich nur ein ELF-File brauchen, alle
Symbole, andere Debug-Infos, und vollständiger Binärcode sind
darin enthalten. Der Lauterbach Debugger bzw. dessen Fontend
holt sich alle Informaion dort heraus.

Sollte es nicht möglich sein mit einen von der Arduino-Seite
erzeugten Code, also einem ELF-File einen Debugger zu nutzen
um Arduino-Kreationen durchzutesten? Vorausgesetzt natürlich
dass der Arduino per JTAG oder PDI degbug-fähig ist, also
z.b. ein ATMega2560, ATxMegaxxx, Arduino Due etc.

von Kaj (Gast)


Lesenswert?

natürlich geht das

von Oliver S. (oliverso)


Lesenswert?

Ja, das geht aber nicht mit der Arduino-IDE.

Oliver

von Möchtegerndebugger (Gast)


Lesenswert?

Kaj schrieb:
> natürlich geht das

Wenn dem so ist müsste man aber vermutlich der Arduino-IDE
noch irgendwelche Compilerflags (küstlich?) unterjubeln um
einen entsprechend nutzbaren Code zu bekommen. Oder geht
das selbstredend mit der Defaulteinstellung? Evtl.
Optimierungsstufe auf null setzen etc. (?)

Oliver S. schrieb:
> aber nicht mit der Arduino-IDE

Schon klar.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

was fehlt dir denn? Fehlt dir das .elf File der Arduino IDE oder 
brauchst du ein .elf File mit anderen Optionen kompiliert? Ehrlich 
gesagt werde ich nicht schlau daraus woran es wirklich klemmt.
Das .elf File findet man jedenfalls unter
C:\Users\xyz\AppData\Local\Temp\arduino_build_ ...
Die Build Nummer vom Ordner steht in der IDE Ausgabe am Ende dabei. 
Musste etwas suchen.

: Bearbeitet durch User
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.