Objectives
|
- Example code, labs and solutions
- STM32L5 Board on STM32CubeIDE
- Familiarity with embedded C concepts and programming
- Basic knowledge of embedded processors
- Cours théorique
- Support PDF (en anglais), imprimé en présentiel ; à distance via Teams.
- Assistance du formateur tout au long de la formation.
- Activités pratiques (40-50% de la durée)
- Exemples de code, exercices et solutions.
- À distance : un PC Linux en ligne par stagiaire, avec carte émulée ou physique selon le cours.
- Présentiel / sur site : un PC (un par binôme au-delà de 6 stagiaires), carte cible et manuel d'installation si nécessaire.
- Machine virtuelle préconfigurée téléchargeable pour refaire les TP après le cours.
- Chaque session débute par un point avec les stagiaires.
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis sont évalués avant la formation.
- Les progrès sont évalués par le formateur via les exercices pratiques, et par des quizz pour les sections sans exercices.
- Chaque stagiaire reçoit une attestation de réussite.
- En cas de prérequis manquant, une formation différente ou complémentaire est proposée.
Plan du cours
- ARMv7-M Architecture
- Cortex-M Architecture
- Registers and Execution States
- Privileges, Mode and Stacks
- Reset Behavior
- Exception and Interrupts
- The System Timer
- Memory Model
- Power Management
- Cortex-M Advanced Features
- ARM v7/v8 MPU
- TrustZone Security Extension
| Exercise : | Create a new project | |
| Exercise : | Interrupt Management | |
- Base real time concepts
- The Real Time constraints
- Multi-task and real time
- Tasks and Task Descriptors
- Content of the task descriptor
- List of task descriptors
- Context Switch
- Task Scheduling and Preemption
- Tick based or tickless scheduling
- Scheduling systems and schedulability proof
- Fixed priorities scheduling
- RMA and EDF scheduling
- Scheduling
- Deterministic preemptive scheduling
- Scheduling strategies
- Cooperative scheduling
- Hybrid scheduling
| Exercise : | Context Switch | |
- The Azure ThreadX
- Azure RTOS Ecosystem
- Azure RTOS Features
- Installation and use of Azure RTOS
- Thread Control Block
- Thread States
- Thread Creation
- Thread Deletion
- Preemption-Threshold
- Changing Thread Priority
- Suspending Threads
- Resume Thread Execution
- Thread Sleep
- Terminate Thread Execution
- Time-Slice
- Thread States and Thread Design
- Thread Statistics
- Visual trace diagnostics using Tracealyzer
| Exercise : | Thread Management | |
| Exercise : | Periodic Threads | |
| Exercise : | Time-slice change | |
| Exercise : | Thread Statistics | |
- Azure RTOS Memory Managers
- Memory Byte Pool
- Memory Block Pool
- Out of Memory management
- Stack overflow detection
| Exercise : | Context Switch Measurement and memory problems detection | |
- Mutual Exclusion
- Critical Sections
- Mutexes
- Recursive mutexes
- Gatekeeper Threads
- Lock-Free Data Structures
| Exercise : | Implement mutual exclusion between tasks | |
- Queues
- Synchronization
- Semaphores
- Binary and counting semaphores
- Events and Event Groups
- The Readers/writer problem
| Exercise : | Sending messages between tasks | |
| Exercise : | Synchronizing a task with another one (Producer/Consumer problem) | |
| Exercise : | Readers/Writer Problem | |
- Threads and Interrupts
- Synchronization between threads and interrupts
- Interrupts on ARM Cortex-M
- Handler thread
- Azure RTOS Primitives Within An ISR
- Queues Within An ISR
- Low Power Support
| Exercise : | Interrupt Management & Deferred interrupt processing | |
| Exercise : | Tickless and Low Power Mode | |
- Application Timers
- System Timer Thread
- One-shot timers
- Auto-reload timers
- Application Timer Commands
| Exercise : | Implement Soft Timers & Synchronize a task with a timer | |
- FIFO
- Linked list
- Memory Management
- Memory Errors
- 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
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
Dernière mise à jour du plan de cours : 20 mai 2026
L'inscription à nos formations est soumise à nos Conditions Générales de Vente