+ +
- -
eLearning et Cours en ligne
 
Calendrier  Détails
Systèmes d'Exploitation
Calendrier  Détails
Programmation
Calendrier  Détails
Processors
 
Calendrier  Détails
Communications
 
 
 
Calendrier  Détails
+ +
> >
- -

 
ac6 >> ac6-training >> Systèmes d'Exploitation >> RTOS >> Real Time Programming with FreeRTOS (Online Training) Télécharger le catalogue Télécharger la page Ecrivez nous Version imprimable

oRT3 Real Time Programming with FreeRTOS (Online Training)

This is a Live Online Training

formateur
Objectives
  • Get an overview on Cortex-M4 architecture
  • Discover the concepts of real time multitasking
  • Understand Real Time constraints
    • Determinism
    • Preemption
    • Interrupts
  • Understand the FreeRTOS architecture
  • Discover the various FreeRTOS services and APIs
  • Learn how to develop FreeRTOS applications
  • Learn how to debug FreeRTOS applications
Prerequisites
  • Familiarity with embedded C concepts and programming
  • Basic knowledge of embedded processors

Course environment
  • Example code, labs and solutions
  • Virtual Machine with System Workbench for STM32 with GNU ARM Eclipse QEMU
  • Emulated board STM32F4-Discovery
Course duration
  • 4 session (4*5 hours)
First Session
Cortex-M Overview
  • ARMv7-M Architecture
  • Cortex-M4 Architecture
  • Registers and Execution States
  • Privileges, Mode and Stacks
  • Reset Behavior
  • Exception and Interrupts
  • The System Timer
  • Memory Model
  • Power Management
  • STM32F407x Implementation Example
Exercise :  Create a new project
Exercise :  Interrupt Management
Real-Time Concepts
  • Embedded system architectures
  • Tasks and process
  • Real-Time
Exercise :  Context Switch
Second Session
Introduction to FreeRTOS
  • The FreeRTOS Family
  • FreeRTOS+Ecosystem
  • Why use FreeRTOS
  • FreeRTOS Code Structure
Scheduling
  • Scheduler
  • Schedulability
Task Management
  • Creating Tasks
  • Task Priorities
  • Task States
  • The idle task
  • Delays
  • Changing Task Priority
  • Deleting Tasks
  • Suspending Tasks
  • Kernel Structures
  • Thread Local Storage
  • Kernel Interrupts on Cortex-M4
  • Scheduling Traces
Exercise :  Task Management
Exercise :  Periodic Tasks
Exercise :  Task Statistics
Third Session
Memory Management in FreeRTOS
  • FreeRTOS Memory Managers
  • Out of Memory management
  • Stack overflow detection
Exercise :  Context Switch Measurement
Resource Management
  • Mutual Exclusion
  • Critical Sections
  • Mutexes
  • Gatekeeper Tasks
  • Lock-Free Data Structures
Exercise :  Resource Management
Synchronization Primitives
  • Queues
  • Queues Sets
  • Synchronization
  • Events and Event Groups
  • The Readers/writer problem
  • Using Other Primitives within an ISR
Exercise :  Queue Management
Exercise :  Readers Writer Problem
Fourth Session
Interrupt Management
  • Tasks and Interrupts
  • FreeRTOS Binary and Counting Semaphores
  • Task Notifications
  • Stream Buffers
  • Message Buffers
  • Interrupt Nesting
  • Low Power Support
Exercise :  Interrupt Management
Exercise :  Tickless Mode
Software Timer
  • Software Timers
  • Deferred Interrupt Handling
Exercise :  Implement Soft Timers
Exercise :  Software Timer Management
FreeRTOS-MPU
  • The Cortex-M MPU
  • The FreeRTOS-MPU Port
  • Defining MPU Regions
  • Creating User and System Tasks
  • Practical Usage Tips
Appendix
Data Structures
  • FIFO
  • Linked list
Memory Management and Real-Time
  • Memory Management
  • Memory Errors
CMSIS – RTOS
  • Overview
  • Kernel Information and Control
  • Threads Management
  • Generic Wait Functions
  • Communication and Resource Sharing
    • Semaphores
    • Mutex
    • Message Queue
    • Signal Events
    • Event Flags
    • Memory Pool
    • Mail Queue
  • Timer Management
  • Interrupt Service Routines