A PCRE internal error occured. This might be caused by a faulty plugin

====== ARM Cortex-M4 Toolchain ====== Zur Programmierung der ARM Cortex-M4 Microcontroller verwende ich die folgende Toolchain: ^ Betriebssystem: | [[http://www.archlinux.org|Arch-Linux]] | ^ Compiler: | [[https://www.archlinux.org/packages/community/x86_64/arm-none-eabi-gcc/|arm-none-eabi-gcc]] | ^ Debugger: | [[https://www.archlinux.org/packages/community/x86_64/arm-none-eabi-gdb/|arm-none-eabi-gdb]] | ^ Build-Tools: | [[https://www.archlinux.org/packages/community/x86_64/arm-none-eabi-binutils/|arm-none-eabi-binutils]] | ^ Flash-Programmer: | [[https://www.archlinux.org/packages/community/x86_64/openocd/|Open-OCD]] | ====== Programmierung ====== OpenOCD ist ein einfach zu bedienendes Tool für die Programmierung und das Debugging einer STM-Discovery Applikation über die SWIM-Schnittstelle der Boards. Welche Boards aktuell untersützt werden kann in <code>/usr/share/openocd/scripts/board/</code> nachgesehen werden. ===== Schritt für Schritt mit Telnet ===== * Zur FLASH-Programmierung das Development-Board an der SWIM Schnittstelle per USB mit dem Rechner verbinden. * Alles weitere passiert auf der Linux-Konsole * Den Befehl //openocd -f board/<boardspec>.cfg// eingeben * Beispiel für das STM32F429-Discovery: <code bash>openocd board/stm32f4discovery.cfg</code> * Der OpenOCD Server läuft jetzt, so dass man sich auf einer zweiten Konsole per telnet mit dem Board verbinden kann: <code bash>telnet localhost 4444</code> * Zuerst wird die laufende Applikation gestoppt: <code>reset halt</code> * Dann werden die Kommandos für das FLASH-Programmieren eingegeben: <code>flash write_image erase <Vollständiger Pfad zum HEX-File></code> * Und mit einem weiteren <code>reset</code> wird die Applikation zum Leben erweckt. * Die telnet-Session kann dann durch Eingabe von <code>exit</code> beendet werden ===== Auf einen Rutsch ===== OpenOCD bietet auch eine einfache Syntax um als Stand-Alone Programmer zu funktionieren: <code> openocd -f board/<boardspec>.cfg -c "program <Vollständiger Pfad zum HEX.File> verify reset"</code> Beispiel: <code> openocd -f board/stm32f4discovery.cfg -c "program /home/tt/src/st-discovery/libopencm3-examples/examples/stm32/f4/stm32f4-discovery/fancyblink/fancyblink.hex verify reset" </code> Damit wird das FLASH gelöscht, die HEX-Datei programmiert anschließend ein Verify durchgeführt und die neu programmierte Applikation durch einen Reset des Boards gestartet.

devel/micro/software/cortex-m4-devel.txt · Zuletzt geändert: 21.04.2014 17:57 von ttha
www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0