Motivace:
STM32CubeIDE nemá šablonu pro vytvoření projektu pouze se základními knihovnami, vytváří buď úplně čistý projekt nebo vyžaduje vytvoření komplexního projektu s HAL knihovnami pomocí externího generátoru CubeMX (verze před 2.0 měla CubeMX integrovaný).
Video návod - https://youtu.be/SyemPsp2jN4 - nebo zde:
Řešení:
Soubory ke stažení (akce na stránkách st.com vyžadují registraci a přihlášení, konkrétní verze jsou i na "mém" DropBox-u):
- STM32CubeIDE
- https://www.st.com/en/development-tools/stm32cubeide.html
- A níže zvolit vhodnou platformu (Windows/Linux/Mac)
- DropBox - https://www.dropbox.com/scl/fi/qiq3f15wuh7vret5alnxt/st-stm32cubeide_2.0.0_26820_20251114_1348_x86_64.exe?rlkey=ewieum77k90fxnma50ddz9rnm&st=fx2jufb7&dl=0
- K dispozici pouze pro 64b Windows
- Repozitory CubeF4
- https://www.st.com/en/embedded-software/stm32cubef4.html
- Únor 2026 - verze 1.28.0
- Možno stáhnout i aktualizované z github-u
- https://github.com/STMicroelectronics/STM32CubeF4
- !! pozor, výchozí projekt na github není kompletní - CMSIS drivery jsou zvlášť na https://github.com/STMicroelectronics/cmsis-device-f4 !!
- DropBox - https://www.dropbox.com/scl/fi/346ho06igs3mu6mj4g8i8/stm32cubef4-v1-28-0.zip?rlkey=jx8qhil1bublf2jb6eyy6ii07&st=13nc2lu8&dl=0
- Verze 1.28.0 využívaná ve cvičeních KEI/MAP 2025/26
- V menu File volba STM32 Project Create/Import
- V nabídce zvolit "STM32CubeIDE Empty Project"
- Začít psát typ procesoru - začít psát F411 (v KEI/MAP se používá kit Nucleo STM32F411) a vybrat v nabídce STM32F411RETx
- Zvolit název projektu (žádné mezery a české znaky) a nechat výchozí nastavení
- Základní kostra projektu je připravena ...
- Není potřeba soubor ...RAM.ld, vybrat "pravým" a zvolit Delete
- Kostra hlavní souboru main.c je jednoduchá, ale nebude se používat, celý obsah lze smazat a nahradit vzorovým kódem pro blikání LED. Zatím ale chybí potřebné knihovny
- Vzhledem k tomu, CubeIDE neumí kompletní projekt, je potřeba přidat soubory "ručně". Protože jsou součástí CMSIS knihovny, vytvoříme nový "zdrojový adresář" - pravým na projekt a vybrat "Source Folder"
- Pozor - ne jen "Folder", ale "Source Folder"
- Jméno např. CMSIS, tak to používáme ve všech příkladech
- Do tohoto adresáře je potřeba nakopírovat z repozitory následující soubory (k nalezení v adresářích podle cesty):
- Drivers\CMSIS\Include\cmsis_compiler.h
- Drivers\CMSIS\Include\cmsis_gcc.h
- Drivers\CMSIS\Include\cmsis_version.h
- Drivers\CMSIS\Include\core_cm4.h
- Drivers\CMSIS\Include\mpu_armv7.h
- Drivers\CMSIS\Device\ST\STM32F4xx\Include\stmf4xx.h
- Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f411xe.h
- Drivers\CMSIS\Device\ST\STM32F4xx\Include\system_stm32f4xx.h
- Drivers\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c
- Pokud by se instalovalo z github-zdrojů, tak větev Drivers\CMSIS\Device\ST je prázdná a je v "tom druhém" projektu "cmsis-device-f4" přímo v adresářích "Include" a "Source"
- Každopádně, v adresáři CMSIS by pak mělo být 9 souborů:
- Pokus překladu (ikona "kladívko" nebo Build Projekt) vede na chyby
- Překladač hlásí, že nemůže najít hlavičkové soubory = nemá cestu k CMSIS adresář.
- Je potřeba ve vlastnostech projektu (pravým na projektu a Properties) zvolit C/C++ General a Path and Symbols. V záložce Includes doplnit (Add...) adresář CMSIS a zaškrtnout "všechny konfigurace" a "všechny jazyky"
- Pro kontrolu by pod záložkou "Source Location" měl být adresář CMSIS vidět - to se stalo automaticky při vytvoření "Source Folder"
- Po dalším pokusu o překlad se chyby změní, důležitá je chyba začínající "#error 'Please ...", která se objevila hlavičkovém souboru stm_32f4xx.h
- Je totiž potřeba tomuto univerzálnímu souboru nastavit, který konkrétní typ procesoru chceme používat. Ideálně vybrat symbol STM32FxE a zkopírovat do schránky.
- Opět ve vlastnostech projektu v "Path and Symbols" - nyní na záložce "Symbols" - přidat (Add...) tento symbol, opět pro všechny konfigurace i jazyky.
- Původní podobný symbol STM32F411RETx ne možné smazat (Delete)
- Nyní by měl překlad výchozí demo aplikaci proběhnout bez chyb a je možné ji otestovat na HW.
- Celý postup je také předveden na youtube