MICRO-315 / 6 crédits

Enseignant: Mondada Francesco

Langue: Français

Retrait: Il n'est pas autorisé de se retirer de cette matière après le délai d'inscription.


Résumé

Ce cours aborde la programmation de systèmes embarqués: la cross-compilation, l'utilisation d'une FPU dans des microcontrôleurs, l'utilisation d'instructions DSP et les mécanismes à disposition dans le cadre d'un Real-time Operating System. Le tout est mis en oeuvre dnas un contexte robotique.

Contenu

 

  • Outils de programmation (assembleur, C) pour systèmes embarqués, étapes de compilation, code généré par un compilateur. Limites de la programmation en C et en assembleur, dépendance du matériel.
  • Contraintes temps-réel, de mémoire ou de puissance de calcul, impact sur la programmation en C par rapport à l'assembleur.
  • Spécificiés d'un processeur DSP, programmation DSP en assembleur
  • Structuration d'application par couches d'abstraction, partage de ressources matérielles, organisation du code.
  • Principes et utilisation d'un Real-Time Operating System.

 

Mots-clés

programmation de systèmes embarqués, cross-compilateur C, programmation DSP, Real-Time Operating System, robotique mobile.

Compétences requises

Cours prérequis obligatoires

Programmation C/C++
Systèmes logiques
Microcontrôleurs

Cours prérequis indicatifs

Blocs 1 et 2

Concepts importants à maîtriser

Systèmes logiques

Concepts de programmation de base (C)

Structure et périphériques d'un microcontrôleur

Acquis de formation

A la fin de ce cours l'étudiant doit être capable de:

  • Optimiser l'écriture de programmes C pour systèmes embarqués
  • Utiliser des outils de compilation croisée
  • Choisir ou sélectionner le language de programmation adapté à une application
  • Développer un programme embarqué
  • Analyser un système embarqué à partir de sa schématique
  • Choisir ou sélectionner entre un processeur standard et un processeur DSP en fonction de l'application visée
  • Concevoir un programme embarqué
  • Structurer une architecture de programme basée sur un RTOS

Compétences transversales

  • Accéder aux sources d'informations appropriées et les évaluer.
  • Ecrire un rapport scientifique ou technique.
  • Faire une présentation orale.
  • Planifier des actions et les mener à bien de façon à faire un usage optimal du temps et des ressources à disposition.
  • Utiliser une méthodologie de travail appropriée, organiser un/son travail.

Méthode d'enseignement

Ex cathedra et pratique (TP et miniprojet)

Travail attendu

Révision par un quiz chaque semaine

Préparation du TP à l'avance

Projet en fin de semestre

Méthode d'évaluation

Un test sur la programmation de systèmes embarqués (40% de la note finale) qui a lieu au milieu du semestre

Un miniprojet de programmation d'un robot (60% de la note finale) dont le rapport est rendu dans les dernipères semaines du semestre selon les dates indiquées en début de semestre par l'enseignant.

Ressources

Liens Moodle

Dans les plans d'études

  • Semestre: Printemps
  • Forme de l'examen: Pendant le semestre (session d'été)
  • Matière examinée: Systèmes embarqués et robotique
  • Cours: 1 Heure(s) hebdo x 14 semaines
  • Projet: 3 Heure(s) hebdo x 14 semaines
  • TP: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Printemps
  • Forme de l'examen: Pendant le semestre (session d'été)
  • Matière examinée: Systèmes embarqués et robotique
  • Cours: 1 Heure(s) hebdo x 14 semaines
  • Projet: 3 Heure(s) hebdo x 14 semaines
  • TP: 2 Heure(s) hebdo x 14 semaines
  • Type: obligatoire
  • Semestre: Printemps
  • Forme de l'examen: Pendant le semestre (session d'été)
  • Matière examinée: Systèmes embarqués et robotique
  • Cours: 1 Heure(s) hebdo x 14 semaines
  • Projet: 3 Heure(s) hebdo x 14 semaines
  • TP: 2 Heure(s) hebdo x 14 semaines
  • Type: optionnel

Semaine de référence

Cours connexes

Résultats de graphsearch.epfl.ch.