stm32f1/README.md

84 lines
2.2 KiB
Markdown
Raw Normal View History

2016-08-14 20:25:55 +02:00
this firmware template is designed for development boards based around [STM32 F1 series micro-controller](http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1031).
project
=======
summary
-------
2016-08-14 20:25:55 +02:00
*describe project purpose*
technology
----------
2016-08-14 20:25:55 +02:00
*described electronic details*
2016-01-29 12:12:04 +01:00
board
=====
The current implementation uses a [blue pill](https://wiki.cuvoodoo.info/doku.php?id=stm32f1xx#blue_pill).
2016-01-29 12:12:04 +01:00
The underlying template also supports following board:
2016-01-29 12:12:04 +01:00
- [Maple Mini](http://leaflabs.com/docs/hardware/maple-mini.html), based on a STM32F103CBT6
- [System Board](https://wiki.cuvoodoo.info/doku.php?id=stm32f1xx#system_board), based on a STM32F103C8T6
- [blue pill](ihttps://wiki.cuvoodoo.info/doku.php?id=stm32f1xx#blue_pill), based on a STM32F103C8T6
2016-01-29 12:12:04 +01:00
**Which board is used is defined in the Makefile**.
This is required:
2016-01-29 12:12:04 +01:00
- for the linker script to know the memory layout (flash and RAM)
- map the user LED and button provided on the board
2016-01-29 12:12:04 +01:00
connections
===========
2016-01-29 12:12:04 +01:00
Connect the peripherals the following way (STM32F10X signal; STM32F10X pin; peripheral pin; peripheral signal; comment):
2016-01-29 12:12:04 +01:00
2016-08-14 20:25:55 +02:00
- *list board to preipheral pin connections*
All pins are configured using `define`s in the corresponding source code.
2016-01-29 12:12:04 +01:00
code
====
2016-01-29 12:12:04 +01:00
dependencies
------------
2016-01-29 12:12:04 +01:00
The source code uses the [libopencm3](http://libopencm3.org/) library.
The projects is already a git submodules.
To initialize and it you just need to run once: `git submodule init` and `git submodule update`.
2016-01-29 12:12:04 +01:00
firmware
--------
2016-01-29 12:12:04 +01:00
To compile the firmware run `make`.
2016-01-29 12:12:04 +01:00
documentation
-------------
To generate doxygen documentation run `make doc`.
2016-01-29 12:12:04 +01:00
flash
-----
The firmware will be flashed using SWD (Serial Wire Debug).
For that you need an SWD adapter.
The `Makefile` uses a ST-Link V2 along OpenOCD software (per default), or a Black Magic Probe.
To flash using SWD run `make flash`.
2016-01-29 12:12:04 +01:00
debug
2016-01-29 12:12:04 +01:00
-----
SWD also allows to debug the code running on the micro-controller using GDB.
To start the debugging session run `make debug`.
2016-01-29 12:12:04 +01:00
USB
---
The firmware offers serial communication over USART1 and USB (using the CDC ACM device class).
2016-01-29 12:12:04 +01:00
You can also reset the board by setting the serial width to 5 bits over USB.
To reset the board run `make reset`.
This only works if the USB CDC ACM is running correctly and the micro-controller isn't stuck.