Tutorat de microprocesseurs - Sujet 8 - Thermostat
DJERABA Taky - HUBERT Thomas - PREUD'HOMME Geoffrey
Sujet
<!-- TODO Faire un bref résumé de ce qu'on nous demande -->
Architecture matérielle
Entrées
On utilisera 4 boutons : pour valider, revenir en arrière, incrémenter et décrémenter. Ils sont branchés sur les ports d'interruption INT0 à INT3 <!-- TODO Association bouton-port interruption --> pour éviter une scrutation afin d'économiser de l'énergie.
Le capteur de température est connecté sur le convertisseur analogique-numérique numéro <!-- TODO numéro et désignation technique -->.
Étude du fonctionnement
Les associations de chaque heure de la semaine à son mode (jour/nuit) seront stockées dans la RAM. Bien qu'en théorie nous n'avons besoin que de $\frac{ \text{nb jours/semaine} \times \text{nb heures/jour} \times \text{nb bits pour stocker le mode} }{ \text{nb bits stockables sur une adresse} }$ $=\frac{7 \times 24 \times 1 }{ 8 }$ $=\frac{168}{8}$ $=21$ adresses pour stocker ces informations, on préfèrera utiliser une adresse par heure de la semaine, soit $168$ adresses. Bien que l'on perd en espace mémoire disponible, on garde en rapidité d'éxecution (et donc en énergie), en effet il n'est pas nécessaire d'utiliser des masques pour récupérer la valeur des bits individuels. De toutes manières, dans notre cas le microprocesseur n'abritera aucun autre programme avec qui il devra partager la RAM, et la consommation énergétique ne change pas selon le nombre d'adresses utilisées, donc il n'y a que des avantages à utiliser cette technique.
Menu
Voici la hiérarchie du menu qui sera utilisé pour
Configuration des interfaces
ADC
On le configurera de manière à mettre les 8 premiers bits de points forts sur un registre complet <!-- TODO comment ça s'appelle ce mode -->. En effet, les valeurs de témpératures allant de 5,0° à 30,6°, en choisissant une précision de 0,1° on obient 256 valeurs possibles, ce qui peut se stocker sur un seul régistre. Une précision supplémentaire ne semble pas nécessaire.
Il sera de plus configuré pour s'activer sur demande et activera une interruption dès que la conversion est terminée afin d'éviter toute scrutation.