Formation Real Time Programming with Eclipse ThreadX | Ac6 Training

ac6-training, un département d'Ac6 SAS
FR
FrançaisEnglish
 
go-up

ac6 ac6-training Programmation Temps réel Real Time Programming with Eclipse ThreadX
RT6Real Time Programming with Eclipse ThreadX
Real-time programming applied to ThreadX (previously Azure RTOS)

Objectives

  • Get an overview on Cortex-M architecture
  • Discover the concepts of real time multithreading
    • Understand Real Time constraints
    • Determinism
    • Preemption
    • Interrupts
  • Understand the Azure RTOS architecture
  • Discover the various Azure RTOS services and APIs
  • Learn how to develop Azure RTOS applications
  • Learn how to debug Azure RTOS applications
  • 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