/stm32f405rg_template

A project template for STM32F405RG.

Primary LanguageC++

STM32F405RG_template

This project is created based on a project which is generated by CubeMX. Target architecture is "STM32F405RG" which is

"High-performance foundation line, Arm Cortex-M4 core with DSP and FPU, 1 Mbyte of Flash memory, 168 MHz CPU, ART Accelerator"

st official site for stm32f405

File Hierarchy

- CMakeLists.txt
- Core/Inc/
-     /Src/
- Drivers/CMSIS/
-        /STM32F4xx_HAL_Driver/
- STM32F405RGTx_FLASH.ld
- mxproject.sample // rename to .mxproject if update by using cubemx
- openocd.cfg
- startup_stm32f405xx.s
- test/Inc/
-     /Src/

Project Configuration

  • PLL is enabled with 16MHz HSE input
  • SYSCLK 100MHz
  • HCLK 100MHz
  • PCLK1 25MHz
  • PCLK2 50MHz
  • LL API is used

Compile Option

https://www.jfcamel.technology/2021/03/findfreertos-cmake.html

  • Default thumb instruction
  • Debug options -g3
  • Optimize options -Os
  • Default rdimon.specs is used

How to build project

To build this project, FreeRTOS & CppUTest are needed.

FreeRTOS

CppUTest

Please download FreeRTOS source and CppUTest source.

To specify the directory where cpputest is placed, run the command below:

user $ export FREERTOS_ROOT=/home/${USER}/${FREERTOS_SOURCES}/
# ex.
# /home/${USER}/Downloads/FreeRTOSv202012.00/

user $ export CPPUTEST_HOME=/home/${USER}/${CPPUTEST_SOURCES}/

Then, build with ordinary way

user $ mkdir build && cd build
user $ cmake .. && make