====== Séance 6 : Prendre en compte les informations externes ====== Dans la séance précédente, nous commandions un composant, en l'espèce nous allumions ou nous éteignions une diode. Cependant dans un système habituel, nous devons prendre en compte des informations venant de l'extérieur. Ces informations peuvent-être de deux types : * des mesures ou des lectures de valeur de manière cyclique, c'est à dire toute les ''x'' millisecondes, * des événements comme par exemple atteindre une temérature un certain seuil, une alarme a été déclenchée, on a appuyé sur un bouton. ===== Objectifs de la séance ===== __Notions abordées :__ - Lecture des informations sur les ports d'une carte ARDUINO. - Prendre en compte des événements soit de manière cyclique, soit de manière asynchrones (prise en compte des interruptions). - Encapsulation dans des objets des notions. __Réalisations en séance :__ - Création d'une classe //bouton poussoir//, - Mise en oeuvre du //bouton poussoir// pour allumer/éteindre une diode de manière cyclique. - Prise en compte de l'asynchonisme pour satisfaire aux limites précédentes de la gestion synchrone. ===== Format du cours ===== TDs intégrés en distanciel. Les étudiants avancent en autonomie et sous la supervision de l'enseignant. Il est demandé aux étudiants d'envoyer à l'enseignant pour ce **jeudi** le code correspondant aux réponses aux questions. **Remarque** : Le TD suivant sera un TD noté. ===== Les jalons ===== **Jalon 1:** [[in202:seance_6:jalon_1|La classe ''Button'']] **Jalon 2:** [[in202:seance_6:jalon_2|Allumer/Eteindre la diode interne à partir de ''Button''.]] **Jalon 3:** [[in202:seance_6:jalon_3|Détermination des limites de l'approche synchone.]] **Jalon 4:** [[in202:seance_6:jalon_4|Ajouter à la classe Button la réactivité]] **Jalon 5:** [[in202:seance_6:jalon_5|En dehors du TD supervisé : Implanter de nouvelles fonctions]]