Xbuild MCU: Rozšíření VSCode pro sestavování projektů STM32
Vývojáři embedded systémů na STM32 se často potýkají s nepohodlím IDE založených na Eclipse, jako je STM32CubeIDE. Alternativou je rozšíření Xbuild MCU pro VSCode, které integruje automatickou generaci projektů, sestavování na základě Xmake (Lua), import z CubeMX a ladění přes Cortex-Debug. To umožňuje spojit editaci, kompilaci a programování v jednom prostředí bez přepínání.
Rozšíření je zaměřeno na středně pokročilé/senior vývojáře: zachovává technickou terminologii, podporuje GCC/G++, JLink a Git podmoduly. Je testováno na reálných projektech, ale je stále ve vývoji.
Vytvoření a počáteční nastavení projektu
Otevřete prázdnou složku v VSCode. Rozšíření zjistí absenci xmake.lua a nabídne jeho generování. Vyberte předvolbu pro MCU (např. STM32F103), nastavte cesty:
JLINK_PATH: cesta k JLink.exe (např.c:/Programs/JLink_V872a/JLink.exe).STM32_SDK: cesta k ARM GCC ze STM32CubeIDE (např.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).
V sekci MCU zadejte definice a include cesty. Použijte "Reset to STM32F103 Defaults" pro začátek, poté přizpůsobte projektu. Hodnoty jsou převzaty z CubeIDE.
Import z CubeMX: zadejte cestu k .ioc projektu. Zkopíruje se startup soubor, linker script, ovladače HAL. main.c a uživatelský kód se nedotýkají — předpokládá se vlastní struktura.
Správa Git podmodulů a šablon
V User Settings VSCode nastavte seznam firemních podmodulů. Rozšíření přidá tlačítka pro připojení/odstranění jedním kliknutím.
Pro strukturu projektu použijte složku templates v kořeni (doporučeno jako Git podmodul). Generace vytvoří složky, soubory a definice podle šablony, poté je šablona odstraněna.
Automaticky se generuje .vscode/launch.json pro Cortex-Debug.
Sestavování, optimalizace a analýza
Podporovány jsou konfigurace Debug/Release s úrovněmi optimalizace (-O0, -O1, -Os, -O2, -O3). Po sestavení se zobrazí využití Flash/RAM v procentech, podobně jako v ESP-IDF.
Seznam dostupných optimalizací s popisy v dropdown:
- -O0: bez optimalizací, pro ladění.
- -O1: minimální optimalizace.
- -O2: agresivní optimalizace rychlosti.
- -O3: maximum rychlosti, riskantní pro ladění.
- -Os: optimalizace velikosti.
Pokud je nainstalován Doxygen, generuje se dokumentace projektu.
Co je důležité
- Automatická generace
xmake.luaa.vscode/launch.jsonminimalizuje ruční nastavení. - Import CubeMX souborů bez přepsání uživatelského kódu.
- Integrace Git podmodulů a šablon pro týmový vývoj.
- Analýza využití paměti po každém sestavení.
- Základní podpora Doxygen pro dokumentaci.
Rozšíření není univerzální: vytvořeno pro konkrétní potřeby, ale přizpůsobitelné přes Lua skripty a šablony. Pro vývoj STM32 na VSCode — pracovní náhrada CubeIDE s důrazem na stručnost.
— Editorial Team
Zatím žádné komentáře.