Cours:InfoS2 EvaluationSimulIde

De troyesGEII
Aller à : navigation, rechercher

Il s’agit d’une page protégée.

Fiche résumé

Retour à la liste des Tds/Tps

Éléments de correction

simuler avec simulIDE

Pensez à mettre sur la 1ère ligne de votre code :
// Compiler: Avrgcc device: nomDuMicrocontroleur


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 !!!!          ***
**************************************************


Question.jpg (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

Question.jpg (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é

Question.jpg (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

Question.jpg (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

Question.jpg (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

Question.jpg (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