Formation Zephyr RTOS
Réf : PHYTEC-5185
- Intitulé : Zephyr RTOS
- Durée : 4 jours
- Sessions : intra-entreprise
- Plate-forme : carte Phytec Reel Board - SoC nRF52840
- Adaptation de contenu sur demande
Cette formation est basé sur la version Zephyr Project 3.3, sur la base de la carte Phytec Reel Board - SoC nRF52840
• Maîtriser l’installation de l’environnement de développement Zephyr
• Gérer la configuration de build
• Générer ses propres devicetree
• Ajouter et Mettre en oeuvre ses propres drivers de périphériques matériels
• Construire et customiser son image Zephyr RTOS
• Maitriser les APIs Système
• Développer et mettre au point des applications sous Zephyr RTOS
Notre formation Zephyr RTOS est adaptée aux développeurs en informatique et techniciens dans le domaine de RTOS confrontés aux problèmes de portage d’applications en exploitant pleinement ses capacités, notamment temps réel. Une connaissance des commandes UNIX usuelles et des notions de programmation en langage C sont souhaitables.
Zephyr RTOS
• Présentation de Zephyr OS
• Zephyr Ecosystem
• Architecture
Projet Zephyr
• Principaux composants
• Zephyr SDK
• Cross-Compiler : GCC - CMake/Ninja/Make
• IDE et Debogger
• Emulateur QEMU
• Shell Support API
Travaux pratiques
• Utilisation de l'outils de construction West
• Execution d'application POSIX sur émulateur QEMU
• Execution d'application sur cible Phytec Reel Board
• Mise en œuvre de la chaine de deboggage sous Eclipse et DAPLink interface
Zephyr OS image
• Architecture kernel et devicetree
- Architecture Configuration Options
- Driver Configuration Options
- Kernel Configuration Options
• Configuration d'un Projet
- Library Configuration Options
- Subsystem Configuration Options
• Modules externes
- External Module Configuration Options
Travaux pratiques
• Customisation de la configuration pour Phytec Reel Board
• Customisation du devicetree pour Phytec Reel Board
Principales API Periphériques
• ADC
• EC Host Command
• EEPROM
• Flash
• GPIO
• Hardware Information
• I2C
• IPM
• LED
• Pinmux
• PWM
• RTC
• Sensors
• SPI
• UART
• Watchdog
Travaux pratiques
• Mise en œuvre d'un Shell via UART
• Mise en œuvre d'application de gestion d'interruption sur GPIO
• Mise en œuvre d'application de gestion de mesure de Température et Accelero
Zephyr Kernel Services
• Threads
• Scheduling
• System Threads
• Workqueue Threads
• Interrupts
• Polling API
• Semaphores
• Mutexes
• Condition Variables
• Symmetric Multiprocessing
Zephyr support POSIX API
Logging support
• Global Kconfig Options
• Logger API
Travaux pratiques
• Mise en œuvre de trace d'application POSIX multi-thread sur QEMU
• Mise en œuvre de trace d'application Zephyr Kernel API multi-thread sur carte Phytec Reel Board
Device Driver Model
• Driver subsystem et API
• Driver architecture (Single / multi-instances)
• Driver Devicetree support
Power Management Support
• Architecture Zephyr Power Managment
• Device Power Management API
Storage API
• Non-Volatile Storage (NVS)
• Disk Access
• SDHC
• Flash map
• Flash Circular Buffer (FCB)
• Stream Flash
Travaux pratiques
• Mise en œuvre d'un driver avec gestion de Power Managment