mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik arm-gdb Konfiguration für OpenOCD


Autor: Kjartan Ferstl (kjartan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bekomme den gdb mit openocd nicht richtig konfiguriert Das Verbinden 
zu OpenOCD scheint zu funktionieren, sonst geht leider nichts.

(Flashen kann ich nur über OpenOCD bereits.)

Mein Versuch:
======================================================================== 
========
1. OpenOCD starten:
C:\openocd\bin>C:\openocd\bin\openocd.exe -f interface/openocd-usb.cfg -f target/stm32.cfg -f actions/debug.cfg
Open On-Chip Debugger 0.4.0 (2010-02-22-19:05)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.berlios.de/doc/doxygen/bugs.html
1000 kHz
jtag_nsrst_delay: 100
jtag_ntrst_delay: 100
Info : clock speed 1000 kHz
Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
Info : JTAG tap: stm32.bs tap/device found: 0x16410041 (mfg: 0x020, part: 0x6410, ver: 0x1)
Info : stm32.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
Info : JTAG tap: stm32.bs tap/device found: 0x16410041 (mfg: 0x020, part: 0x6410, ver: 0x1)
target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
Info : device id = 0x20036410
Info : flash size = 128kbytes
flash 'stm32x' found at 0x08000000

2. GDB starten (aus Eclipse):
warning: unknown ARM EABI version 0x5000000
Don't know how to run.  Try "help target".

3. GDB Konfigurieren (in der Eclipse gdb Konsole Befehle händisch 
eingetippt):
target remote localhost:3333
Antwort von gdb:
Remote debugging using localhost:3333
0xfffffffe in ?? ()
Antwort von openocd:
Info : accepting 'gdb' connection from 0
Error: address + size wrapped(0xfffffffe, 0x00000004)
monitor reset
Antwort von openocd:
JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba00, ver: 0x3)
JTAG tap: stm32.bs tap/device found: 0x16410041 (mfg: 0x020, part: 0x6410, ver: 0x1)
stm32.cpu -- clearing lockup after double fault
target state: halted
target halted due to debug-request, current mode: Handler HardFault
xPSR: 0x01000003 pc: 0xfffffffe msp: 0xffffffdc
load
Antwort von gdb:
Loading section .isr_vector, size 0x10c lma 0x8000000
Memory access error while loading section .isr_vector.

Antwort von openocd:
Error: JTAG-DP STICKY ERROR
Error: MEM_AP_CSW 0x23000052, MEM_AP_TAR 0x8000004
Error: JTAG-DP STICKY ERROR
Error: MEM_AP_CSW 0x23000052, MEM_AP_TAR 0x8000004
Warn : Block write error address 0x8000000, wcount 0x43
Error: unexpected error -107

Wäre toll, wenn ihr mir helfen könntet.

Schöne Grüße aus Linz,
Kjartan

Anhang:
======================================================================== 
========

Mein Setup:
- Windows 7 x64
- Eclipse
- Eclipse GNU ARM Plugin
- CodeSourcery G++ Lite Toolchain zum Compilieren und Linken
- gnuarm Toolchain für den GDB Server
- OpenOCD
- OpenOCD-USB Debugger aus dem Shop
- Board mit einem STM32F103RB

Was funktioniert:
- Flashen mit OpenOCD
- Eclipse compilieren und linken

Meine debug.cfg (für OpenOCD starten):
gdb_port 3333
init
reset halt
flash probe 0

Meine funktionierende cfg fürs Flashen:
# start device communication session
init

# stop the controller
reset halt

# test and ?select? a flash bank
flash probe 0

# write the image 
flash write_image erase upload.hex

# start de controller
reset run

# quit the device communication session, close openocd
shutdown

Autor: Kjartan Ferstl (kjartan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bump

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Kjartan Ferstl,

helfen kann ich Dir zwar noch nicht, aber Dein Post hat mich auf jeden 
Fall einen Schritt weiter gebracht. Durch Deinen Post funktioniert 
Flashen mit OpenOCD.

Mein Setup ist:
- Ubuntu 10.10 - »Maverick Meerkat«
- Eclipse INDIGO
- GDB Hardware Debugging (pluginn)
- CodeSourcery G++ Lite Toolchain zum Compilieren und Linken
- OpenOCD
- Board LM3S6965

Vielen Dank und VG,
Micha

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.