Systèmes embarqués

Objectifs

L’objectif de ce cours est de présenter quelques particularités matérielles et logicielles qui distinguent les systèmes embarqués des systèmes informatiques classiques. Dans un premier temps, ce cours donne d’une part, les principales caractéristiques architecturales des systèmes embarqués temps réel et d’autre part, les techniques de développement logiciel associé. Ce cours s’appuie plus particulièrement sur une carte matérielle centrée sur un microcontrôleur. Tous les mécanismes d’échange entre ce microcontrôleur et le monde externe sont analysés. Ainsi, ce cours conduit à l’écriture de code permettant la gestion des interfaces GPIO, des entrées/sorties analogiques, des bus série I2C et SPI, des liaisons OneWire et PWM, et enfin, d’aƯicheurs LCD et GLCD.

Plan du cours

1) Introduction au Systèmes Embarqués Temps Réel
a) Domaine étudié
b) Produits utilisés pour le développement croisé

2) Développement logiciel embarqué
a) Programmation en langage C (monolithique)
b) Application à la gestion d’Entrées/sorties élémentaires GPIO : LED et boutons
c) Programmation événementielle
d) Application à la gestion d’interruptions sur GPIO
e) Mise en place du mécanisme d’interruptions pour les Timers

3) Conversion de données
a) Convertisseur Analogique Numérique
b) Convertisseur Numérique Analogique

4) Transfert de données
a) Communication OneWire
b) Mise en place d’un capteur de température
c) Communication série I2C
d) Mise en place d’un capteur / accéléromètre
e) Communication série SPI
f) Mise en place d’un expanseur de ports

5) Systèmes d’affichages dédiés
a) Principe des LCD
b) Mise en œuvre d’un LCD
c) Principe des GLCD
d) Mise en œuvre d’un GLCD

Description des TP

A remplir

Connaissances requises

Langage C

RSE (Responsabilité Sociale et Environnementale)

Bibliographie

A remplir