Skip to content

A collection of code examples for the STM32F103C8Tx microcontroller

License

Notifications You must be signed in to change notification settings

augustofg/STM32F103C8T6-Examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

This repository contains source code examples for the ARM Cortex-M3 STM32F103C8T6 microcontroller.

Dependencies

  • arm-none-eabi-gcc
  • arm-none-eabi-gdb
  • arm-none-eabi-newlib
  • openocd (>= 0.8.0)
  • make

How to compile and upload the examples

Compile

$ make

You can change the default optimization level (-Og) through the OPT flag:

$ make clean
$ make OPT=-O3

Upload / Flash:

Before uploading/flashing/debugging for the first time select the debug adapter:

$ ./dbgcfg
Please chose the debug interface:
[0] ST-LINK/V2
[1] ST-LINK/V2-1
[2] JLINK
[3] CMSIS-DAP
Choice:

After that, your choice will be stored on a local ".interface" file. You can change it at any time by invoking the dbgcfg script again.

To flash the microcontroller:

$ make flash

Clean output files:

$ make clean

Generate .bin file:

$ make bin

Generate .hex file:

$ make hex

Debugging:

You can debug with gdb you can invoke the debug script (tui mode) or invoke gdb directly:

$ arm-none-eabi-gdb *.elf -x gdbcmd

If you have PyCortexMDebug installed you can invoke gdb with python:

$ arm-none-eabi-gdb *.elf -x pygdbcmd

This will make inspecting microcontroller's registers and bit fields much more convenient.