Skip to content
Olavi Kamppari edited this page Jun 8, 2016 · 1 revision

Tutorial in using STM32F103xx Boards in hard Real-Time Control

The purpose of the tutorial is to show how to create small scale applications that operate within the confines of a stringent deadline. An application may be considered to have failed if it does not complete its function within the allotted time span. For control purposes, the target latency is under one millisecond. This is achieved by using only C language instead of C++.

The other main principle in the tutorial is to keep things simple. That means that assembly language is not used and Real-Time Operating System is not used. For performance reasons, a timer wheel (without preemption) is used instead of a single master loop. The other reason for not using RTOS in a small MCU, is that there are multiple stacks and the SRAM size is limited.

The tutorial is progressive and uses concepts that have been introduced in earlier steps. The reader can skip pages and use code library that was developed in earlier steps. The tutorial assumes that the reader has basic understanding of MCU, embedded IDE, communication protocols, and C-language.

The content for this tutorial is developed in steps. It is expected that there will be no changes in the published steps, but it is not guaranteed. Feedback, comments, and questions can be recorded as Issues in this repository.

Clone this wiki locally