Softwareentwicklung für den STM32¶
2019, 2022
ARM GCC Compiler¶
Enthält GNU C/C++ Compiler, Binutils, GDB, Newlib.
Windows, Linux und Mac OS X
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain
Wähle GNU toolchain for embedded processors. Bare-metal development.
OpenOCD¶
Läuft unter Linux, Windows und MAC.
Sourcecode holen mit:
git clone https://git.code.sf.net/p/openocd/code openocd-code
Kompilieren mit
$ ./bootstrap $ ./configure --enable-stlink --enable-ft2232_libftdi --prefix=<instpath> --enable-maintainer-mode $ make $ make install
Der Pfad <instpath> kann z.B.
/opt/openocd
sein. Nach der Installation muss noch die PATH Umgebungsvariable um <instpath>/bin erweitert werden.Kompilierte Pakete: http://hhoegl.informatik.hs-augsburg.de/pub/openocd/
Arbeiten ohne IDE¶
Mehrere Terminalfenster oder Terminal Multiplexer (
tmux
)Automatisieren mit
make
.Beliebiger Editor, z.B. vim, emacs, scite, gedit, kate, sublime, geany, notepadqq, scite, atom.
Editor sollte mit ctags umgehen können.
Universal Ctags https://ctags.io
OpenOCD läuft als Server in einem eigenen Terminalfenster und stellt die Verbindung zwischen Entwicklungsrechner und STM32 Mikrocontroller her. Mit OpenOCD kann man über
telnet
oder dem GNU Debugger GDB sprechen.
Integrierte Entwicklungsumgebungen von ST Micro¶
ST32 CubeIDE¶
Aktuelle STM32 IDE (Nov. 2022)
Basiert auf Eclipse
Enthält auch CubeMX
Import von Atollic TrueSTUDIO und AC6 System Workbench
Atollic Truestudio Lite¶
Baut auf Eclipse (Open-Source Software)
Läuft auf Linux, Windows, MAC
Download fuer HSA-Studis (Linux, Windows):
http://hhoegl.informatik.hs-augsburg.de/nonfree/atollicstm32/
(Version vom September 2019)
OpenSTM32¶
Kostenlos
Baut auf Eclipse (Open-Source Software)
System Workbench for STM32 (SW4STM32)
Läuft auf Linux, Windows, MAC
https://www.openstm32.org/HomePage (Hersteller https://www.ac6.fr), „AC6 System Workbench“
Download fuer HSA-Studis (Linux, Windows):
https://hhoegl.informatik.hs-augsburg.de/nonfree/openstm32-9-2019/
(Version vom September 2019)
Siehe auch „SW4Linux“ für den STM32MP1.
Integrierte Entwicklungsumgebungen von alternativen Herstellern¶
Platformio¶
Im Kern freie Software.
Baut auf Python (https://pypi.org/project/platformio)
Läuft auf Linux, Windows, MAC.
Kennt Arduino, ARM mbed, Espressif (ESP8266/ESP32), STM32, PIC32, nRF51/nRF52, FPGA, CMSIS, SPL, AVR, Samsung ARTIK, libOpenCM3
Als IDE wird Atom oder VSCode verwendet.
Visual Studio Code¶
Kostenlos (im wesentlichen Open-Source Software)
Baut auf dem „Electron“ Framework, das wiederum auf Node.JS aufbaut.
Läuft auf Linux, Windows, MAC.
Achtung: Hier ist M$-typische Telemetrie eingebaut! Es gibt Anleitungen im Netz, die erklären, wie man diese abschalten kann.
MDK Microcontroller Development Kit (von Fa. Keil)¶
Offizielle kommerzielle ARM Entwicklungsumgebung (Keil wurde von ARM aufgekauft)
Enthält µVision IDE
Nur für Windows
Kostet was