Objectifs du premier travail écrit
Les objectifs qui seront examinés par le premier travail écrit sont Les trois premiers chapitres du script et les deux premiers TP.
Programmation en langage C/C++ (pour programmeur Java)
- L’utilisation de bibliothèques
- Les entrées sorties
- La compilation séparée
- Les types de données
- Les variables
- Les constantes
- Les instructions de contrôle de flux
- Les classes
- Les objets
- Les fonctions
- Les tableaux et les vecteurs
- Les pointeurs
- L’héritage
- Exercices
Architecture générale des ordinateurs
- Ordinateur
- Microprocesseur et microcontrôleur
- Unité centrale de traitement
- Principe de traitement de l’information
- Taxonomie de Flynn
- Architectures des jeux d’instructions
- Information et données
- Mémoire centrale
- Périphériques
- Placement d’un programme en mémoire
- Exercices
Architecture interne
- Architecture ARM
- Exécution d’un programme informatique
- Composants internes des µP ARMv7
- Modes des CPU ARMv7
- Performances
- Exercices
Systèmes de nombres
- Savoir représenter les nombres en base 2, 10 et 16.
- Savoir représenter les nombres signés et non signés.
- Comprendre le fonctionnement de l’addition binaire (avec des nombres signés et non signés).
- Comprendre le rôle des fanions (C, Z, N, V), savoir comment ils sont calculés et comment les utiliser.
- Comprendre la représentation des nombres signés (complément à deux)
- Savoir calculer l’opposé d’un nombre signé.
- Savoir comment l’addition binaire peut être utilisée pour soustraire deux nombres (signés ou non signés).
- Comprendre les opérations de comparaison.
- Comprendre la relation entre les fanions et les opérations de comparaison.
- Comprendre et savoir résoudre tous les exercices.
Travail pratique 1
- Programmation en C++
- Utilisation des outils de développement
- Utilisation du CI/CD de gitlab pour vérifier le code
- Tests unitaires
- Tracing
- Attente avec “Busy Wait” (boucle de “nop”)
- Clignotement d’une LED
Travail pratique 2
- Techniques pour connecter un bouton-poussoir à un microcontrôleur
- Techniques pour connecter une LED à un microcontrôleur
- Utilisation du joystick de la cible
- Utilité et rôle des assertions
- Utilisation des timers du microcontrôleur pour faire des actions répétitives
- Mesure du temps avec un timer
- Lecture de l’état des boutons-poussoirs par “polling” périodique