Zurück zur Startseite

Xbuild MCU für VSCode und STM32

Xbuild MCU-Erweiterung für VSCode ersetzt STM32CubeIDE in der eingebetteten Entwicklung. Unterstützt Projekt-Auto-Generierung, Import von CubeMX, Xmake-Build und Debugging. Ideal für Teams mit Git-Submodulen und Vorlagen.

CubeIDE-Ersatz: Xbuild MCU in VSCode
Advertisement 728x90

Xbuild MCU: VSCode-Erweiterung für STM32-Projektbuilds

Embedded-Entwickler, die mit STM32 arbeiten, kämpfen oft mit umständlichen Eclipse-basierten IDEs wie STM32CubeIDE. Hier kommt Xbuild MCU, eine VSCode-Erweiterung, die die Projektautogenerierung, Xmake-basierte Builds (betrieben durch Lua), CubeMX-Imports und Cortex-Debug-Integration übernimmt. Sie ermöglicht Bearbeiten, Kompilieren und Flashen in einer nahtlosen Umgebung – kein App-Wechseln mehr.

Diese Erweiterung richtet sich an Entwickler von mittlerem bis fortgeschrittenem Niveau: Sie verwendet präzise Fachbegriffe, unterstützt GCC/G++, JLink und Git-Submodule. Sie ist in realen Projekten erprobt, wird aber weiter aktiv entwickelt.

Erstellen und Initiales Projekt-Setup

Öffnen Sie einen leeren Ordner in VSCode. Die Erweiterung erkennt die fehlende xmake.lua und fordert Sie zur Generierung auf. Wählen Sie ein MCU-Preset (z. B. STM32F103) und legen Sie Ihre Pfade fest:

Google AdInline article slot
  • JLINK_PATH: Pfad zu JLink.exe (z. B. c:/Programs/JLink_V872a/JLink.exe).
  • STM32_SDK: Pfad zu ARM GCC aus STM32CubeIDE (z. B. c:/ST/STM32CubeIDE_1.19.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.win32_1.0.0.202510090749/tools).

Im MCU-Bereich fügen Sie Ihre Defines und Include-Pfade hinzu. Klicken Sie auf „Auf STM32F103-Standard zurücksetzen“, um zu starten, und passen Sie es an Ihr Projekt an. Die Werte werden direkt aus CubeIDE übernommen.

CubeMX-Import: Zeigen Sie auf Ihre .ioc-Datei. Es kopiert Startup-Dateien, Linker-Skripte und HAL-Treiber. Ihre main.c und benutzerdefinierten Code bleiben unberührt – ideal für kundenspezifische Setups.

Verwalten von Git-Submodulen und Templates

In den VSCode-Benutzereinstellungen listen Sie Ihre Firmen-Submodule auf. Die Erweiterung fügt Ein-Klick-Buttons zum Hinzufügen/Entfernen hinzu.

Google AdInline article slot

Für die Projektstruktur legen Sie einen templates-Ordner im Root an (am besten als Git-Submodul). Die Generierung erstellt Ordner, Dateien und Defines aus dem Template und räumt es danach auf.

Es generiert automatisch .vscode/launch.json für Cortex-Debug.

Bauen, Optimierung und Analyse

Unterstützt Debug/Release-Konfigurationen mit Optimierungsstufen (-O0, -O1, -Os, -O2, -O3). Nach dem Build zeigt es Flash/RAM-Nutzung in Prozent an, ähnlich wie bei ESP-IDF.

Google AdInline article slot

Dropdown-Liste mit Optimierungen und Beschreibungen:

  • -O0: Keine Optimierungen, ideal zum Debuggen.
  • -O1: Minimale Optimierungen.
  • -O2: Aggressiver Geschwindigkeitsboost.
  • -O3: Maximale Geschwindigkeit, aber schwierig zum Debuggen.
  • -Os: Größenorientierte Optimierung.

Doxygen installiert? Es generiert Projekt-Dokumentation automatisch.

Wichtige Highlights

  • Generiert automatisch xmake.lua und .vscode/launch.json, um manuelle Einrichtung zu sparen.
  • Importiert CubeMX-Dateien, ohne Ihren Code zu überschreiben.
  • Nahtlose Git-Submodule und Templates für Team-Workflows.
  • Speichernutzungsanalyse nach jedem Build.
  • Integrierte Doxygen-Unterstützung für Dokumentation.

Kein Alleskönner: Speziell für bestimmte Anforderungen gebaut, aber erweiterbar über Lua-Skripte und Templates. Für STM32-Entwicklung in VSCode ist es eine schlanke Alternative zu CubeIDE.

— Editorial Team

Advertisement 728x90

Weiterlesen