Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stv0g/stm32cube-gcc
A developement environment for projects based on the STM32Cube firmware.
https://github.com/stv0g/stm32cube-gcc
Last synced: 1 day ago
JSON representation
A developement environment for projects based on the STM32Cube firmware.
- Host: GitHub
- URL: https://github.com/stv0g/stm32cube-gcc
- Owner: stv0g
- Created: 2015-02-08T21:15:21.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-07-02T16:48:20.000Z (over 8 years ago)
- Last Synced: 2024-11-24T09:27:56.060Z (2 months ago)
- Language: Makefile
- Size: 11.7 KB
- Stars: 90
- Watchers: 13
- Forks: 27
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- stars - stv0g/stm32cube-gcc
README
# STM32Cube Makefile
This is a template application for the STM32 ARM microcontrollers that compiles with GNU tools.
It serves as a quick-start for those who do not wish to use an IDE, but rather
develop in a text editor of choice and build from the command line.## Target Overview
- `all` Builds the target ELF binary.
- `program` Flashes the ELF binary to the target board.
- `debug` Launches GDB and connects to the target.
- `cube` Downloads the most recent STM32Cube version from the ST website and extract it to `cube`.
- `template` Copies a simple example/template, startup code and a linker script from the `cube` to your `src` directory.
- `clean` Remove all files and directories which have been created during the compilation.## Installing
Before building, you must install the GNU compiler toolchain.
I'm using the the `gnu-none-eabi` triple shipped with recent Debian and Ubuntu versions:sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi
You also might want to install some other libraries and debuggers:
sudo apt-get install openocd gdb-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib
## Source code
Your source code has to be put in the `src` directory.
Dont forget to add your source files in the Makefile.## Programming and debugging code on the board
First, make sure you have OpenOCD installed and in your path (see above).
Recent versions already come with full support for the discovery and nucleus boards.
Then connect your board, and load the application by saying:make program
To load the program and debug it using GDB, simply use the debug target:
make debug
GDB connects to the board by launching OpenOCD in the background.
See [this blog post](http://www.mjblythe.com/hacks/2013/02/debugging-stm32-with-gdb-and-openocd/)
for info about how it works.### UDEV Rules for the Discovery Boards
If you are not able to communicate with the Discovery board without
root privileges you should add [appropriate udev rules](49-stlink.rules).