Programmation avancée des microcontrôleurs
Sessions de formation
(Fuseau horaire : Europe/Paris)
Centre Cnam Paris - Formation 1er Semestre ouverte et à distance
La période de cours est planifiée du 15/09/2025 au 17/01/2026
La période d'inscription est programmée du 02/06/2025 10:00 au 17/10/2025 18:00
Présentation
Public, conditions d'accès et prérequis
- Posséder déjà quelques notions en électronique numérique, numération et logique combinatoire
- Posséder des notions de programmation en langage C/C++ et d'algorithmique
Objectifs
- Comprendre et maîtriser les outils modernes de programmation des microcontrôleurs, principalement leur programmation en langage C/C++
- Mettre en œuvre un microcontrôleur, utiliser ses périphériques internes et interagir avec différents types de modules externes
- Sensibiliser aux contraintes de temps réel dans les systèmes à microcontrôleurs pour l'embarqué (gestion par interruptions)
- Ce cours nécessite l'acquisition d'une carte de développement Nucleo-F429ZI (ou Nucleo-F439ZI) STMicroelectronics, de quelques accessoires annexes, d'un ordinateur avec connexion Internet pour la programmation en ligne.
Contenu
- Présentation détaillée de la carte Nucleo-F429ZI et des caractéristiques principales du microcontrôleur STM32F429ZI
- Prise en main de l'environnement de développement en ligne arm KEIL Studio Cloud et de ses API
- Utilisation des interfaces "digitales" d'entrée/sortie (GPIO)
- Communication microcontrôleur <--> ordinateur PC via une interface série type UART
- Présentation des interfaces de communication standard sur microcontrôleur : I2C, SPI, CAN, ... Écriture de driver I2C pour un écran LCD et un capteur de température, pression, humidité
- Commande PWM de dispositifs divers : LED, moteur à courant continu, etc.
- Gestion de temps par temporisateurs (Timer), mini-projet d'application
- Introduction au fonctionnement en "temps réel" par interruptions
- Gestion du temps par temporisateurs en interruption : génération de signaux "digitaux", mesure de fréquence et de période
- Contrôle/commande (asservissement numérique) en temps réel de la vitesse de rotation d'un moteur à courant continu
- Conversion analogique/numérique (CAN), numérique analogique (CNA) : application à la mesure de grandeurs physiques
- Traitement numérique du signal sur microcontrôleur, en temps différé ou en temps réel : acquisition par échantillonnage, traitement, restitution
- Introduction au noyau temps réel embarqué MBED OS RTOS
Modalités d'évaluation
- Projet(s)
- Examen final
La moitié de la note finale dépend des travaux personnels redus sur la plateforme Moodle du cours, l'autre moitié concerne l'examen sur table.