173-2 | Systemes embarques | Génie physique et systèmes embarqués (formation initiale sous statut apprenti) | S6 | ||||||
---|---|---|---|---|---|---|---|---|---|
Cours : 16 h | TD : 0 h | TP : 34 h | Projet : 0 h | Total : 50 h | |||||
Responsable : Dimitri Boudier |
Pré-requis | |
---|---|
- Bases en langage C (langage procéduraux, etc) - Bases en outils de développement logiciel (environnement de programmation, shell UNIX, Makefile, chaîne de compilation, etc) - Bases en systèmes numériques (systèmes combinatoires et séquentiels, algèbre booléenne, numération, etc) - Bases en électronique analogique (composants actifs et passifs, lecture de schéma électrique, etc) |
|
Objectifs de l'enseignement | |
- Comprendre l'architecture et le fonctionnement d'un processeur numérique à CPU (Central Processing Unit), notamment un MCU (Micro Controller Unit) - Développer des bibliothèques pilotes et une application embarquée sur MCU - Documenter une solution |
|
Programme détaillé | |
https://foad.ensicaen.fr/course/view.php?id=116 En cours (avec démonstrations) : - Introduction au domaine de l'embarqué - Hétérogénéité des architectures de processeurs - Introduction à la famille MCU - Architecture MCU PIC18 de Microchip - Assembleur MCU PIC18 de Microchip - Ordonnancement et développement d'une application Baremetal (sans Système d'exploitation) embarquée - Introduction aux réseaux de communication (filaire et non filaire) En TP (développement du firmware d'une enceinte bluetooth) : - Développement d'un BSP (Board Support Package) from scratch (en partant de rien) à l'étage registre - Développement, test et validation de fonctions pilotes (GPIO, Timer, UART, Bluetooth, etc) - Développement, test et validation d'une application embarquée avec scheduler offline (enceinte bluetooth) - Documentation des solutions |
|
Applications (TD ou TP) | |
Développement du firmware implémentant une enceinte bluetooth : - Développement du BSP (carte Curiosity HPC) - Développement de l'application avec scheduler offline Outils matériel et logiciel : - Prototype d'enceinte bluetooth ENSICAEN - IDE MPLABX et chaîne de compilation XC8 de Microchip - Carte Curiosity HPC (MCU PIC18F27K40) de Microchip - Click Board Audio bluetooth et USBtoUART Mikroelektronika - Cartes filles afficheur LCD ENSICAEN |
|
Compétences acquises | |
COMPÉTENCES GÉNÉRIQUES Considération de la dimension organisationnelle, personnelle et culturelle * Capacité à enteprendre et à innover Adaptation aux exigences propres de l'entreprise et de la société * Aptitude à prendre en compte les enjeux et les besoins de la société * Aptitude à prendre en compte les enjeux de l'entreprise: dimension économique, respect de la qualité, compétitivité et productivité, intelligence économique Acquisition des connaissances scientifiques et techniques et la maitrise de leur mise en œuvre * Connaissance, compréhension d'un large champs de sciences fondamentales et capacité d'analyse et de synthèse associée * Aptitude à mobiliser les ressources d'un champ scientifique et technique spécifique * La maîtrise des méthodes et des outils d'ingénieurs: identification, modélisation, résolution de problèmes, utilisation des approches numériques et outils informatiques, pratique du travail collaboratif et à distance * Capacité à concevoir, concrétiser, tester et valider des solutions, des méthodes, des produits, des systèmes innovants * Capacité à effectuer des activités de recherche, fondamentale ou appliquée, à mettre en place des dispositifs expérientaux * Capacité à trouver l'information pertinente, à l'évaluer et à l'exploiter COMPÉTENCES SPÉCIFIQUES - Comprendre l'architecture matérielle d'un processeur numérique à CPU - Analyser un programme assembleur - Développer des routines assembleur - Développer des fonctions pilotes (périphériques) C depuis l'étage registre - Développer une application C embarquée (Baremetal) - Tester et valider unitairement puis intégrer des solutions logicielles embarquées - Lire et analyser une documentation technique de processeur - Rédiger une documentation technique et documentation logicielle |
|
Bibliographie | |
LANGAGE C : The C Programming Language – Kernighan et Ritchie ARCHITECTURE PROCESSEUR : Architecture de l'ordinateur - Tanenbaun OUTILS : https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.pdf TECHNOLOGIES : sites fondeurs, forums et documentations techniques (https://www.microchip.com/, https://www.st.com, etc) |
© 2024 - ENSICAEN ( Mentions Légales - Crédits )