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.

Filename, size & hash SHA256 hash help File type Python version Upload date
cubemx2cmake-1.2.tar.gz (4.8 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page