Document: Date: 30/07/24
Revision 2
Summary STM32F4 FreeRTOS
Prepared by: Flávio Cavalieri
STM32F4 FreeRTOS
Eletrocursos 2023 – All Rights Reserved 1/5
Document: Date: 30/07/24
Revision 2
Summary STM32F4 FreeRTOS
Prepared by: Flávio Cavalieri
Summary
Document History .................................................................................................................. 3
Trainer .................................................................................................................................... 3
Training hours........................................................................................................................ 3
Goals....................................................................................................................................... 3
Index ....................................................................................................................................... 4
Methodology .......................................................................................................................... 5
Necessary resources ............................................................................................................. 5
Eletrocursos 2023 – All Rights Reserved 2/5
Document: Date: 30/07/24
Revision 2
Summary STM32F4 FreeRTOS
Prepared by: Flávio Cavalieri
Document History
Rev. Date Comments Rev. by
1 12.06.23 Initial document FGC
2 30.07.24 Add sysview uart FGC
Trainer
Name Company Email
Flávio Cavalieri Eletrocursos [email protected]
Training hours
Video Lessons
10 h
Goals
1. Implement different FreeRTOS API functions on STM32F4 microcontrollers;
2. Explore and understand the mainly FreeRTOS API concepts;
3. Develop a bunch of examples appling API functions as Queues, Semaphores, Software Timers, Event
Groups etc.
4. Analyse, using SEGGER SystemView trace tool, the RTOS behaviour for the developed examples.
Eletrocursos 2023 – All Rights Reserved 3/5
Document: Date: 30/07/24
Revision 2
Summary STM32F4 FreeRTOS
Prepared by: Flávio Cavalieri
Index
INITIAL CONCEPTS
Understand RTOS main characteristics, its behavior and setup possibilities, etc.
Checkout the support online documentation and the software/hardware resources
used in the training lessons. Develop a Project in order to explore different RTOS
configuration possibilities and create a first Task Implementation.
Complementary material / software:
Video lesson 1
• STM32CubeIDE
• SEGGER System View
• Termite
• DevBoard
• ST-Link Programmer
• USB SERIAL Converter
• FreeRTOS
• CMSIS-RTOS2
TRACE TOOL INTEGRATION
Install and modify necessary software files in order to collect RTOS events at RAM
Video lesson 2 and save the data to an output file. Analyze the embedded RTOS application
behaviour executing on target.
Complementary material:
• Target Sources
QUEUES
Explore this important and useful mechanism in RTOS. The lesson covers the topic by
Video lesson 3 implementing several interesting examples and analyzing different possibilities and it’s
behaviors.
Complementary material:
• FreeRTOS
SOFTWARE TIMERS
Understand the difference between hardware and software timers. Implement
Video lesson 4 examples using Periodic and One-Shot modes.
Complementary material:
• FreeRTOS
Eletrocursos 2023 – All Rights Reserved 4/5
Document: Date: 30/07/24
Revision 2
Summary STM32F4 FreeRTOS
Prepared by: Flávio Cavalieri
SEMAPHORES
Explore the theme by implementing examples using Binary or Counting Semaphores.
Working with development board push buttons we gonna trigger distinct ISRs
Video lesson 5 responsible to release their respective tasks.
Complementary material:
• FreeRTOS
TASK NOTIFICATION
Comprehend the benefits and limitations of using Task Notification in comparison to
other RTOS objects. Implement examples with similar functionality to counting and
Video lesson 6 binary semaphores, and furthermore carry a 32-bit notification value.
Complementary material:
• FreeRTOS
EVENT GROUPS
Compare to other RTOS objects and understand its characteristics and benefits for
Video lesson 7 some applications. Implement different examples in order to test it’s possibilities.
Complementary material:
• FreeRTOS
MUTEX
Implement Mutual Exclusion in order to control the hardware resource access shared
Video lesson 8 between the different project tasks.
Complementary material:
• FreeRTOS
TRACE TOOL USART COMMUNICATION
Step by step video explaining how to setup sysview online communication to the
Video lesson 9 target device using USART peripheral.
Complementary material:
• Target Sources
Methodology
• STM32F407 Development board + ST-Link Programmer + USB Serial Converter
• Video lessons, handouts, softwares and manuals;
Necessary resources
• Microcomputer with at least two free USB ports, software and drivers installed:
Eletrocursos 2023 – All Rights Reserved 5/5