Programmation avancée des microcontrôleurs

Réf. : ELE118

Sessions de formation

(Fuseau horaire : Europe/Paris)

Centre Cnam Centre-Val-de-Loire - Formation 2nd Semestre hybride

L'inscription est ouverte jusqu'au 07/04/2025 17:47

Centre Cnam Paris - Formation 1er Semestre ouverte et à distance

La période de cours est planifiée du 16/09/2024 au 18/01/2025

L'inscription est actuellement terminée pour cette session

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 oeuvre 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 (éventuellement Nucleo-F746ZG) 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, ... Ecriture 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