• Industries électronique / Génie électrique / Mécanique / Maintenance industrielle / Automatismes

Programmation avancée des microcontrôleurs

Programmation avancée des microcontrôleurs
Unité d'enseignement

Détails

Infos générales

Code
ELE118

Présentation

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 et système temps réel) ;
  • Ce cours nécessite l'acquisition d'une carte de développement STMicroelectronics Nucleo-F439ZI (ou F756ZG ou F767ZI) et de quelques accessoires annexes (liste détaillée dans l'espace dédié au cours sur la plateforme Moodle lecnam.net), d'un ordinateur de type PC, sous Windows, MacOs ou Linux.

Intitulé officiel

Programmation avancée des microcontrôleurs

Conditions d'accès

Pré-requis

Formation(s) requise(s)

Aucun prérequis.

Programme

Contenu de la formation

  • Présentation détaillée de la carte Nucleo-F439ZI et des caractéristiques principales du microcontrôleur STM32F439ZI
  • Installation et prise en main de l'environnement de développement STM32CUBE IDE de STMicroelectronics, descriptif rapide des APIs (Application Programming Interfaces) de la librairie HAL (Hardware Abstraction Layer 
  • Utilisation des entrées/sorties d'usage général GPIO (General Purpose Input Output)
  • Fonctionnement en "temps réel" par interruptions dans un microcontrôleur, différence avec le mode “Polling
  • Communication microcontrôleur <--> ordinateur de développement via une interface série UART
  • Conversion analogique-numérique (CAN) en mode “Polling”, “Interruption” ou “DMA” (Direct Memory Access)
  • Gestion de temps par temporisateurs (Timer)
  • Commande PWM de dispositifs divers : LED, moteur à courant continu, etc. Contrôle/commande (asservissement numérique) en temps réel de la vitesse de rotation d'un moteur à courant continu
  • Acquisition de signaux analogiques pour visualisation en temps réel sur l'ordinateur de développement (simulation d'oscilloscope)
  • Conversion numérique-analogique (CNA), synthèse de signaux de différentes formes
  • Traitement numérique du signal à l'aide de filtres RIF (Réponse impulsionnelle finie) ou RII (Réponse impulsionnelle infinie) en temps différé ou en temps réel, mesures de performance
  • Écriture d'un driver I2C pour un écran LCD, un capteur de température-pression-humidité Bosh Sensortech
  • Introduction au noyau temps réel embarqué CMSIS RTOS de arm (Real Time Operating System

Unités d'enseignement

  • Programmation avancée des microcontrôleurs
    À distance / Partiellement à distance Octobre à Février 6 crédits

Organisation

Durée et organisation

L'année est organisée en 2 semestres : semestre 1 (S1) d'octobre à février/mars et semestre 2 (S2) de février/mars à juin.
 

Méthodes mobilisées

Pédagogie qui combine apports académiques, études de cas basées sur des pratiques professionnelles et expérience des élèves.
Équipe pédagogique constituée pour partie de professionnels. Un espace numérique de formation (ENF) est utilisé tout au long du cursus.
 

Modalités d'évaluation

Chaque unité (UE/US, UA) fait l'objet d'une évaluation organisée en accord avec l'Établissement public (certificateur) dans le cadre d'un règlement national des examens.
 

Accessibilité public en situation de handicap

Nos formations sont accessibles aux publics en situation de handicap. Un référent Cnam est dédié à l'accompagnement de toute personne en situation de handicap. Pour contacter le référent : handi@cnam-paysdelaloire.fr

Modalités d'inscription

Comment s'inscrire ?

Choisissez votre semestre et cliquez sur "Ajouter à ma sélection".
 

Modalités et délais d'accès

Les inscriptions se déroulent dès le mois de mai pour les formations qui débutent en octobre (semestre 1) et dès novembre pour les formations qui débutent en février/mars (semestre 2).