hallo! ich versuche ein programm auf einem mcb2140-board mit lpc2148 von keil im flash zu debuggen. das ganze mit openocd in eclipse. openocd scheint richtig zu starten, wenn ich dann allerdings den gdb anwerfe erhalte ich fehlermeldungen wie sie in dem 'error.txt' zu sehen sind. ich werd langsam nicht mehr schlau draus und hoffe, dass ihr mir helfen könnt. dem gdb werden folgende kommandos zur initialisierung übergeben: target remote localhost:3333 monitor soft_reset_halt monitor reg #pc 0x00 monitor arm7_9 sw_bkpts enable break main load main continue cfg für den openocd: #daemon configuration telnet_port 4444 gdb_port 3333 #interface interface ft2232 ft2232_device_desc "Amontec JTAGkey A" ft2232_layout jtagkey jtag_speed 0 #use combined on interfaces or targets that can't set TRST/SRST separately reset_config trst_and_srst srst_pulls_trst #jtag scan chain #format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE) jtag_device 4 0x1 0xf 0xe #target configuration daemon_startup reset #target <type> <startup mode> #target arm7tdmi <reset mode> <chainpos> <endianness> <variant> target arm7tdmi little run_and_halt 0 arm7tdmi-s_r4 run_and_halt_time 0 30 working_area 0 0x40000000 0x40000 nobackup ich vermute, dass es an den 'initialize' commands liegt, bin mir aber nicht wirklich sicher. gruß, stephan
ok. ich habs geschafft die fehlermeldungen etwas zu reduzieren, kann aber mit den verbliebenen immer noch wenig anfangen: ->error forum2.log
Hallo Stephan, zur Initialisierung des arm-elf-gdb unter Eclipse benutze ich die folgende Befehlssequenz: target remote localhost:3333 monitor wait_halt monitor sleep 500 monitor poll monitor soft_reset_halt monitor arm7_9 sw_bkpts disable monitor arm7_9 force_hw_bkpts enable monitor mww 0xE01FC040 0x0001 monitor mdw 0xE01FC040 symbol-file main.elf set $pc=0x0 Tschau Sven!
Hallo Stephan, mein letztes Posting so ohne Erklärungen war unter Umständen doch zu knapp. Wenn Du ein Programm im Flash debuggen möchtest stehen Dir keine Softwarebreakpoints zur Verfügung, sondern nur 2 Hardwarebreakpoints. Daher: monitor arm7_9 sw_bkpts disable monitor arm7_9 force_hw_bkpts enable Die Adresse 0xE01FC040 sthet für das "Memory Mapping Control Register", und der Inhalt 0x0001 steht für den "user flash mode". Ausprobiert habe ich es noch nicht, aber unter Umständen kannst Du dieses Register auch in Deinem Programm entsprechend setzen. Tschau Sven!
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.