STM32F7508 Discovery Kit Setup Instructions
This topic helps you setup the development environment for STM's STM32F7508 discovery kit.
- STM32F750N8H6 MCU featuring ARM® Cortex®-M7, 64-KBytes Flash, 340-kbytes RAM
- 4.3” 480x272 Touch Display
- 16-Mbit SRAM memory
- 128-Mbit Quad-SPI Flash memory
- 128-Mbit SDRAM
- Ensure that the common STM prerequisites are met
- Install STM32CubeF7 SDK 1.16.0 or newer (provided by the Qt online installer)
- Flash the bootloader image onto the device. See Bootloader Flashing Instructions for ST boards
- Launch Qt Creator and select Tools > Options > Devices > MCU.
- Select the Qt for MCUs 1.3 - STM32F7508-DISCOVERY from the drop-down list for Target supported by the Qt for MCUs SDK.
- Provide the STM32CubeProgrammer install path if it is not installed in the default location.
- Select Create Kit to create a kit for the selected target. if a kit already exists, remove it first using Remove Kit.
Note: If you don't see the option to create a kit, check your settings in the Requirements section.
- Click Apply.
To get started from the command line, ensure that the following these instructions:
Qul_DIRto the Qt for MCUs SDK install path.
<QT_INSTALL_PATH>is the Qt install directory,
<VERSION>is the directory containing the Qt Quick Ultralite version you are using, for example
ARMGCC_DIRto the ARM Toolchain install path.
- Add the CMake and Ninja tools to your system
PATH. If you installed these tools using the Qt online installer, they are installed under
- Add STM32CubeProg install directory to
System PATHif it is not installed in the default location.
ST-LINK_gdbserver.exedirectory to your
<STM32_CUBE_IDE_INSTALL_PATH>is the Cube IDE install path.
Note: STM32CubeIDE is optional and required only for on-chip debugging purposes.
- Create the
STM32Cube_FW_F7_SDK_PATHenvironment variable and set it to the following path:
<QT_INSTALL_PATH>is the Qt install directory.
Qt Creator provides a build configuration with the kit that you created created earlier for the Qt for MCUs 1.3 - STM32F7508-DISCOVERY target. If you are using a command line setup, configure using the following CMake variables. For more information, see the CMake Manual.
The platform to build for must be set to
stm32f7508-discoveryfor this board.
This platform supports armgcc compiler.
The supported color depths by this platform are 16-bit or 32-bit, with 32-bit being the default.
Note: If this variable is not set, default color depth is used while configuring for the platform.
By default, the asset data for application is copied to SDRAM on application startup. In order to keep resources in external flash, and not load it to RAM on startup, use the QUL_COPY_TO_RAM CMake option with the value
Neverwhen adding assets to the application with qul_add_resource.
The package for
STM32F7508-DISCOVERY board comes with the following prebuilt demo binaries
You can find it in the
See Flashing Instructions for ST boards, for information about flashing the device.
For this board, select
N25Q128A_STM32F7508-DISCO as the external loader.
Qt for MCUs provides the source code of several demos and examples. You can modify, build, and flash custom binaries onto the target device.
Source code for supported demos and examples is organized in the following directory structure:
Note: Demos or examples that are highlighted in bold are the only ones supported on this board.
Open the CMake project file for the example you want to build and configure it with the kit you created earlier. Once the project is configured, select Run or press Ctrl+r on your keyboard to build and flash the binary to the target.
The following example builds the
watch demo for this board:
cd %Qul_DIR%\demos\watch mkdir build cd build cmake .. -G "Ninja" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=%Qul_DIR%\lib\cmake\Qul\toolchain\armgcc.cmake -DQUL_PLATFORM=STM32F7508-DISCOVERY cmake --build .
Once you have successfully built the
watch demo, you can flash it from command line:
cmake --build . --target flash_watch
The same procedure applies to any other application.
If your license provides you access to the Qt Quick Ultralite sources, build it with all of supported demos/examples. Run the following commands from the terminal window:
cd %Qul_DIR% mkdir build cd build cmake .. -G "Ninja" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=..\lib\cmake\Qul\toolchain\armgcc.cmake -DQUL_GENERATORS=..\lib\cmake\Qul\QulGenerators.cmake -DQUL_PLATFORM=STM32F7508-DISCOVERY
Once Qt Quick Ultralite is built successfully, you can flash the supported demos/examples from command line.
cmake --build . --target flash_<DEMO_OR_EXAMPLE_NAME>
<DEMO_OR_EXAMPLE_NAME> is the name of supported demo/example.
The bootloader image can be flashed onto the device along with demo or example using dedicated cmake target.
Run the following command from the terminal window:
cmake --build . --target flash_<DEMO_OR_EXAMPLE_NAME>_and_bootloader
<DEMO_OR_EXAMPLE_NAME> is the name of supported demo/example.
This section describes how to build an application, using a custom Qt Quick Ultralite build.
- First, you must set up the development environment as described earlier.
- Build Qt Quick Ultralite from the modified sources and install it to a custom location.
mkdir some\path\custom_builds\qul cd some\path\custom_builds\qul mkdir qul-build cd qul-build cmake <PATH_TO_INSTALLED_QT_SDK>\QtMCUs\<version> \ -G "Ninja" \ -DCMAKE_INSTALL_PREFIX=some\path\custom_builds\qul \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE=<PATH_TO_INSTALLED_QT_SDK>\QtMCUs\<version>\lib\cmake\Qul\toolchain\armgcc.cmake \ -DQUL_PLATFORM=<PLATFORM_NAME> \ -DQUL_BUILD_TESTS=OFF \ -DQUL_BUILD_DEMOS=OFF \ -DQUL_BUILD_EXAMPLES=OFF \ -DQUL_GENERATORS=<PATH_TO_INSTALLED_QT_SDK>\QtMCUs\<version>\lib\cmake\Qul\QulGenerators.cmake \ ninja install
- Use the custom Qt Quick Ultralite to build your application, which is not part of the Qt Quick Ultralite source tree:
cd some\path\custom_builds mkdir app # Put your application here. You can use the redbutton example from the SDK. cd app mkdir build cd build set QUL_DIR=some\path\custom_builds\qul cmake .. \ -G "Ninja" \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE=some\path\custom_builds\qul\lib\cmake\Qul\toolchain\armgcc.cmake \ -DQUL_GENERATORS=<PATH_TO_INSTALLED_QT_SDK>\QtMCUs\<version>\lib\cmake\Qul\QulGenerators.cmake \ -DQUL_PLATFORM=<PLATFORM_NAME> \ ninja ninja flash_<YOUR_APP_NAME>
By default, the output of
printf calls are redirected to a virtual serial port, which is exposed on the host machine via USB.
- Open terminal window and run the following command:
ST-LINK_gdbserver.exe -cp "<STM32_CUBE_PROG_INSTALL_PATH>\bin"
<STM32_CUBE_PROG_INSTALL_PATH>is the directory where you've installed the Cube Programmer tool.
GDB Server is now listening for TCP connections on the default port,
Note: Actual TCP port used by
ST-LINK_gdbserveris printed out on gdbserver's console.
arm-none-eabi-gdbin a separate console
- Connect to the target via the gdbserver in the
(gdb) target remote 127.0.0.1:61234
ST-LINK_gdbserver requires up-to-date ST-LINK firmware to be installed. If you see the following error:
Error in initializing ST-LINK device. Reason: ST-LINK firmware upgrade required.
you must upgrade the firmware to the latest version using the STM32CubeProgrammer tool.
If the problem persists after upgrade, retry with
ST-LINK Upgrade tool from the ST webpage ( Download ).
Available under certain Qt licenses.
Find out more.