Microprocesseurs (05AOEMIP)
- Coefficient : 4
- Volume Horaire: 87h estimées de travail (dont 63h EdT)
- CTD : 18h encadrées (et 3h de séances d'études dirigées)
- Labo : 36h encadrées (et 6h de séances d'études dirigées)
- Travail personnel hors EdT : 24h
Liste des AATs
Description
- Architecture type et fonctionnement de base d’un système à microprocesseur
- étude des principes de fonctionnement et des architectures (VonNeuman/Harvard)
- programmation d’un microprocesseur : application au cas de l’ARM Cortex M4
- mise enœuvre d’une chaîne de développement pour le test et le debug
- Accès aux périphériques : application au microcontrôleur STM32F411
- Etude des mécanismes d’exceptions : exceptions matérielles ou interruptions
- Généralités sur les communications par liaison série et étude des liaisons UART, et I2C
Acquis d'Apprentissage visés (AAv)
AAv1 [heures: 30, D1, D2, D3, D4] : L'étudiant du cours de microprocesseurs, à l'issue du semestre, saura composer et tester un programme écrit en langage assembleur ARM en utilisant des outils de développement, pour la compilation et la visualisation des registres et du contenu de la mémoire, en respectant le standard AAPCS, afin d’exécuter un programme de calcul ou de traitement de chaînes de caractères sur un microcontrôleur STM32.
AAv2 [heures: 33, D1, D2, D3, D4] : L'étudiant du cours de microprocesseurs, à l'issue du semestre, saura faire interagir un microcrontrôleur STM32 avec des leds, des boutons poussoirs et un signal de demande d'interruption extérieur au microcontrôleur en mettant en œuvre le périphérique GPIO du microcontrôleur, d'abord par utilisation directe de ses registres puis par utilisation d'une API de gestion des GPIO à développer, à l'exception de la fonction d'initialisation fournie, afin de piloter des leds, de récupérer l’état de boutons poussoirs et d’interrompre le programme en cours pour exécuter la routine de service de l'interruption associée à la demande extérieure.
AAv3 [heures: 24, D1, D2, D3, D4] : L'étudiant du cours de microprocesseurs, à l'issue du semestre, sera capable d'utiliser un timer pour contrôler une temporisation ou la période d'interruptions périodiques ou générer un signal à modulation de largeur d'impulsion, modifier son rapport cyclique et l'appliquer à une broche physique du microcontrôleur STM32, en utilisant, dans un cadre guidé, l'interface de registres du timer, puis en complétant une API d'encapsulation des fonctionnalités du timer pour obtenir une durée ou un signal PWM conforme à celui attendu.
Modalités d'évaluation
moyenne de plusieurs évaluations courtes de contrôle continu en CTD (coefficient 1) et en Labo (coefficient 1)
Mots clés
Microprocesseur ; microcontrôleur ; mémoire ; ARM CortexM4 ; IDE ; programmation, développement et débogage ; exceptions matérielles ; interruptions, coupleurs périphériques ; GPIO, timers ; communication par liaison série ; UART, I2C.
Pré-requis
Algèbre de Boole ; connaissances de base en électronique numérique et codage de l’information ; programmation en langage C.
Ressources
- matérielles/logicielles : cartes NUCLEO-STM32F411 et MBED Shield, chaîne de développement GCC/GDB
- moodle : polycopiés de cours/TD/TP, Reference Manual STM32F411, documentation des
- constructeur ARM et ST.
- Livres :
- The Designer’s Guide to the Cortex-M Processor Family de Trevor Martin (2016)
- The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors de Joseph Yiu (2013)
- ARM System-On-Chip Architecture – S. Furber
- ARM Architecture Reference manual- D. Seal