db9rb
Neuling
Offline
Posts: 31
|
|
Alternative zur Arduino IDE
« on: 02. September 2020, 19:50:32 »
|
|
Der Vorteil der Arduino IDE ist die breite Unterstützung vieler Controllerfamilien wie z.B. STM32, Teensy , ESP32, Arduinos natürlich und einiges mehr. Der Editor ist allerdings sehr spartanisch und läd nicht unbedingt dazu ein, den Code auf mehrere Quellcodedateien zu verteilen. Debuging ist nur sehr eingeschränkt möglich. Auf der Suche nach einer Alternative bin ich auf Visual Studio Code (VS Code) gestossen. https://de.wikipedia.org/wiki/Visual_Studio_Code
Dieser Editor läuft unter Windows, Linux sowie macOS und kann durch Plugins erweitert werden. PlatformIO ist ein solches in Python geschriebenes Plugin, welches den Build und Programmierprozesses unterstützt. Debuging über Jtag, STLINK etc wird unterstützt. https://platformio.org/
VSCodium ist eine aus den Quellen von VS Code erzeugte Version ohne die Telemetrieübermittlung von MS. https://github.com/VSCodium/vscodium
Zur Zeit "arbeite" ich an einigen Projekten mit dem STM32 Controllern.
Mittels eines "Project Wizard" kann man ein Board (oder den Controller) und ein zugehöriges Framework auswählen. Im Falle von STM32 Controller stehen die folgenden Frameworks zur Verfügung : -Arduino -CMSIS -STM32Cube - ...
Im vorher festgelegten Workspace Verzeichnis wird für jedes Projekt ein eigenes Verzeichnis angelegt. Dann erzeuge ich mit CubeMX die Initialisierungdateinen, die im gleichen Verzeichnis gespeichert werden. Da bei PlatformIO die STM32Cube libraries immer etwas älter sind ersetze ich z.B.das f0 Verzeichnis durch einen Link auf das entsprechende STM32Cube Verzeichnis. (Der Editor entfernt mir leider immer die Backspaces)
In der Projekt Ini Datei können noch zusätzliche Einstellungen vorgenommen werden :
[env:OtterPill-STM32F072] platform = ststm32 board = Otterpill_STM32F072cb framework = stm32cube
board_build.mcu = stm32f072cb
; change MCU frequency board_build.f_cpu = 48000000L
build_flags = -I Inc/ -I src/FreeRTOS/Source/include -I src/FreeRTOS/Source/portable -I src/FreeRTOS/Source/CMSIS_RT -I src/ST/STM32_USB_Device_Libr -I src/ST/STM32_USB_Device_Libr ;-Wl,-Map,.pio/output.map
upload_protocol = stlink debug_tool = stlink
Zusätzlich habe ich ein Git Plugin installiert. Da VS Code bzw. VS Codium "nur" ein Editor ist, empfiehlt es sich entweder zusätzlich ein Projektmanager - Plugin zu installieren oder beim Wechsel des Projekt vorher alle Dateien zu schliessen. Die Einarbeitung ist sicher etwas aufwendiger als bei der Arduino IDE, aber es lohnt sich (m.E.). Viel Spass beim Ausprobieren und bei Fragen bitte melden.
|