Hallo ich hoff mal wieder auf euch als Hilfe:
Ich nutze Eclipse mit openOCD und Zylin Plugin (GDB Debugger) um mein
Programm über einen ARM-USB-TINY auf ein LPC2378 Entwicklungsboard zu
übertragen (beides von Olimex).
Mein Problem ist nun, dass nur jeder zweite Start des Debuggers glückt.
Wenn der Debugger startet, reagiert er auf Breakpoints und ich kann
beobachten wie sich der Wert von Variablen ändert oder Registerinhalte
gesetzt werden.
Theoretisch also alles sehr schön aber am Entwicklungsboard tut sich
nix. Genauer: ich setze Register damit eine LED blinkt und lese einen
Taster ein -> beides geht nicht mit Debugger.
Dem Zylin Plugin habe ich folgende die Komandos mitgegeben:
1 | target remote localhost:3333
|
2 | monitor reset
|
3 | monitor sleep 500
|
4 | monitor poll
|
5 | monitor soft_reset_halt
|
6 | monitor arm7_9 force_hw_bkpts enable
|
7 | monitor flash erase_sector 0 0 0
|
8 | monitor flash write_image Debug\\test1.hex 0x0
|
9 | break main
|
10 | load
|
11 | continue
|
Übertragen wird mein Test Programm korrekt in den Flash, wenn ich es
ohne Debugger laufen lasse funktioniert es.
Muss ich fürs debuggen vll. was am Programm ändern? Z.B. im startup-File
ändern?
vvl. noch hilfreich: ich erhalte die Meldung
1 | Warning: arm7_9_common.c:1950 arm7_9_read_memory(): memory read caused data abort (address: 0xffffffff, size: 0x1, count: 0x1)
|
wenn er mit dem Speicher interagiert.
Hoffe sehr auf euch, da mir kein Fehler auffällt.
LG Steffen