HRI board firmware  v2.1
Microcontroller firmware of the board used during the HRI labs.
HRI board firmware documentation

Introduction

This is the documentation of the HRI board firmware. You will find a description of the provided library and drivers. As all the hardware and software is very new, please do not hesitate to suggest improvements to the course assistants (Romain Baud, Philipp Hörler and Laurent Jenni).

Code structure

The code is divided into 3 parts:

One module (controller, communication, library or driver) is always splitted in two files, .h and .c, like in C++.

soft_architecture.png

How to use the provided library

For most of the driver/library modules, call x_Init() only once, when the program starts (typically in the main()). Then, you can call x_Step()/x_Set()/x_Get() everytime as needed, typically in the control functions called periodically (ctrl_RegulatePosition()...).

See the "Modules" section of this documentation to see how they work.

STM32's resources usage

Timers

ADCs

DAC

Communication buses