Skip to main content

Command line tool to generate CMakeLists.txt from STM32CubeMX projects.

Project description

Installation

From this repository:

git clone https://github.com/eugene-babichenko/cubemx2cmake.git

cd cubemx2cmake

pip install .

Or you can install it from PyPI:

pip install cubemx2cmake

Usage

Generate your initialization code from STM32CubeMX with the following Code Generation Options:

  • Toolchain: SW4STM32

  • [X] Generate under root

Then open your project directory and run cubemx2cmake <your_cube_mx_file>.ioc. If your working directory contains only one CubeMX project file (.ioc), you can simply run *cubemx2cmake and it will find your project file automatically. This will generate CMakeLists.txt, STM32Toolchain.cmake, openocd_debug.cfg and openocd_flash.cfg files.

To get all the things done right use -DCMAKE_TOOLCHAIN_FILE=STM32Toolchain.cmake command line option with CMake.

CMakeLists contains the separate target called flash, which compiles your code and then flashes it to the target processor with OpenOCD. By default stlink-v2 is specified as the debugging interface. You can specify any other interface with –interface command line option. You can also specify flash memory start address with –memory_start option (0x08000000 by default). Telnet and GDB ports can be changed with –telnet-port and –gdb-port (4444 and 3333 are the defaults).

This scripts also generates a bunch of shell script files: * openocd_flash.sh - flashes the target MCU; * openocd_debug.sh - open debugging port for the target MCU; * gdb.sh - connect to the target MCU after openocd_debug.sh was started.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cubemx2cmake-1.2.tar.gz (4.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page