The program does not make use of HAL and CMSIS drivers, or an IDE.
main.c
- contains MCU code, a round-robin schedulerled.c
- contains code for initializing 4 LEDsstm32_startup.c
- contains vector table and reset handlerstm32f411re_linkerscipt.ld
- the linker script describes how data is written on the mcusyscalls.c
- the program uses standard libraryMakefile
- for automating of compilation
The compilation and flashing work with:
arm-none-eabi-gcc (GNU Arm Embedded Toolchain 10-2020-q4-major) 10.2.1 20201103 (release)
xPack OpenOCD, x86_64 Open On-Chip Debugger 0.10.0+dev
Download the code, go to the folder and run
make clean
make
- that will generate an final.elf
file which you can flash
make semi
- that will generate a final_sh.elf
file which makes usage of standard library
make load
- that will start OpenOCD