Cours:InfoS2 EvaluationSimulIde
Révision datée du 11 avril 2024 à 08:04 par Fredmn (discussion | contributions)
Pensez à mettre sur la 1ère ligne de votre code : // Compiler: Avrgcc device: nomDuMicrocontroleur
Sommaire
[masquer]Identification des cibles
Fichiers pour simulide : I2cSlaveEvaluation.zip
************************************************** *** Attention, programme dans un fichier .ino *** ************************************************** *** choisir le µc Master en tant que MainMCU *** *** !!!! le point jaune !!!! *** **************************************************
(1 points) Trouver l'adresse i2c du "slave afficheur"
Utilisation du chenillard
Le slave chenillard s'utilise de façon simple :
- on peut uniquement écrire des valeurs sur ce slave
- on enverra :
- la valeur 0 pour arrêter le chenillard
- la valeur 1 pour mettre en route le chenillard
(1 points) Ecrire un programme dans le master qui :
- met en marche le chenillard pendant 1s
- l'arrête pendant 2s
- recommence
Utilisation du bouton
Le slave chenillard s'utilise de façon simple :
- on peut uniquement lire des valeurs sur ce slave
- on lira :
- la valeur 0 lorsque le bouton n'est pas appuyé
- la valeur 1 lorsque le bouton est appuyé
(2 points) Ecrire un programme dans le master qui :
- affiche la valeur du bouton sur la liaison série
- commande la mise en marche du chenillard avec le bouton
Utilisation de l'afficheur 7 segments
Le slave afficheur s'utilise de façon simple :
- on peut uniquement écrire des valeurs sur ce slave
- il y a 4 registres :
- registre 0 : change la valeur des unités
- registre 1 : change la valeur des dizaines
- registre 2 : change la valeur des centaines
- registre 3 : change la valeur des milliers
(2 points) Ecrire un programme dans le master qui :
- affiche la valeur "1234" pendant 1s
- affiche la valeur "9876" pendant 2s
- recommence
Utilisation du chrono
Le slave chrono s'utilise de la façon suivante :
- on peut écrire ou lire des valeurs sur ce slave
- en écriture :
- écrire la valeur 0 permet d'arrêter le chrono
- écrire la valeur 1 permet de mettre en route le chrono et de le remettre à 0
- en lecture :
- on obtient la valeur du chronomètre
- il conviendra de multiplier la valeur lue en i2c par 8 pour obtenir la durée en ms
(2 points) Ecrire un programme dans le master qui :
- lance le chrono
- attend 500ms
- arrête le chrono
- récupère la valeur du chrono
- affiche la valeur du chrono sur la liaison série (en ms)
- affiche la valeur du chrono sur le slave afficheur
- attend 5s avant de recommencer
Assemblons le tout
On réalise un jeu de réflexe : le joueur devra appuyer sur le bouton dès qu'il constate un changement sur le chenillard
(2 points) Ecrire un programme correspondant à l'algorithme suivant :
- attendre 1s
- démarrer le chenillard
- démarrer le chrono
- attendre appui sur le bouton
- arrêter le chrono
- arrêter le chenillard
- lire le chrono
- afficher la valeur du chrono sur l'afficheur
- attendre le relâchement du bouton
- attendre 5s