wie Programmieren der STM32-flash mit openOCD und gdb
Ich verwende einen Olimex ARM-USB-OCD-dongle mit openOCD und GDB zu Programmieren und zu Debuggen ein stm32f103 Mikro. Die IDE verwende ich kam von der Olimex dev-kit-CD und macht den Einsatz von eclipse ganymede.
Kann ich laden Sie ein kleines Programm in den RAM und Schritt durch den code ohne Probleme.
Ich habe jetzt ein viel größeres Programm, das passt nicht in den RAM (nur 20K), und so möchte ich es ausführen von flash (die 128K).
Ich geändert habe das linker-Skript angibt, das Programm-code sollte gehen in die flash Sektion (Adresse 0x8000000), aber gdb schlägt fehl, um das Programm zu laden.
(gdb)
20 load main.out
&"load main.out\n"
load main.out
~"Loading section .text, size 0xb0e6 lma 0x8000000\n"
Loading section .text, size 0xb0e6 lma 0x8000000
&"Load failed\n"
Load failed
Was muss ich tun, um gdb zum laden des Programms in den flash?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie sich überlegt blinken direkt mit openocd? Ich Tue dies in ein ähnliches setup, aber mit einem ARM7 mikrocontroller.
Hier ist mein flash.cfg
Den GPNVM Zeug ist Atmel SAM7-spezifische, aber ich denke, das Skript sollte Ihnen einen guten Ausgangspunkt für einen STM32-version. Openocd kann ein wenig verwirrend am Anfang, aber die Dokumentation ist gut und lesenswert (http://openocd.berlios.de/). Die aktuelle stabile version (0.4.0) ist schon ziemlich alt, so dass, wenn Sie Probleme haben, laden Sie die neuesten source-code und kompilieren Sie Ihre eigenen.