This application note explains how to build and run FreeRTOS run-time image for the Emcraft STM32H7 SOM and Starter Kit using STM32CubeIDE.
1. FreeRTOS gits
Emcraft maintains the FreeRTOS sources for the STM32H7 SOM and Starter Kit in the following repository:
The master-1.11.0-cubeide
branch contains a project configuration compatible with STM32CubeIDE. This configuration is intended to write the resulting executable binary to the STM32H7 SOM internal Flash and not compatible with the U-Boot boot loader.
2. Software Set-Up
STM32CubeIDE is required on the development host in order to build and debug FreeRTOS. Go to https://www.st.com/en/development-tools/stm32cubeide.html and select the latest version of the IDE. The configuration has been tested with STM32CubeIDE Version 1.14.1 on Windows 11.
3. Hardware Set-Up
The following hardware set-up is required for installation of the software to the STM32H7 SOM:
STM32H7-SOM Rev 1A soldered onto the STM32H7-BSB Rev 1A or STM32H7-BSB Rev 2A baseboard.
The microUSB cable connected to the P1 connector on the baseboard (to provide the STM32H7 serial console to the development host).
The ST-LINK/V2 debugger/programmer connected to the 20-pin P3 ARM JTAG connector on the baseboard.
The following picture illustrates the above hardware set-up for STM32H7-BSB Rev 1A:
The following picture illustrates the above hardware set-up for STM32H7-BSB Rev 2A:
4. Adding the FreeRTOS Project to STM32CubeIDE
Run the following step-wise procedure to import FreeRTOS project to STM32CubeIDE:
Create a separate directory and clone the FreeRTOS repository:
$ mkdir stm32h7-som $ cd stm32h7-som $ git clone https://gitlab.com/emcraft/STM32H7/STM32CubeH7.git -b master-1.11.0-cubeide
Start STM32CubeIDE and select a workspace directory. The workspace directory is an arbitrary directory, different from the directory where your source file is located.
Click File->Open Projects from File System:
Select
<STM32CubeH7 path>/Projects/STM32H7_SOM/Applications/FreeRTOS/freertos_stm32h750/SW4STM32/STM32H750-SOM
path and click Finish.
5. Building the Project
In Project Explorer double click to the
freertos_stm32h750.ioc
file to activate the Device Configuration Tool:Click Project->Generate Code or press Alt-K to generate C-files from the
.ioc
file.Click Project->Build Project or press Ctrl-B to start building.
Select the Console tab and check the output:
If needed, find the executable binaries in the Debug subfolder of the FreeRTOS project directory.
6. Debugging the Project
Click the Debug button at the top panel:
Select Remember my decision and switch to the Debug Perspective if prompted:
Wait for the STM32CubeIDE to write the firmware image to the target via ST-Link and stop at the
main()
function:Proceed to execute you program with steps, put breakpoints, and examine variables.
7. Known Problems and Limitations
This section lists known problems and limitations of this project configuration.
SDRAM is not supported.
LCD is not supported.
U-Boot environment and reliable upgrade are not available because the U-Boot boot loader has been removed.