Commit b469a2530031b54b0f3f98cbed26a197062fc011
1 parent
2962f7e6
Récupération de ce qui avait été écrit en séance
Showing
3 changed files
with
53 additions
and
22 deletions
Show diff stats
1 | 1 | # Tutorat de microprocesseurs - Sujet 8 - Thermostat |
2 | 2 | ## DJERABA Taky - HUBERT Thomas - PREUD'HOMME Geoffrey |
3 | 3 | |
4 | -# Brouillon | |
4 | +# Sujet | |
5 | 5 | |
6 | -Wouhou, on peut écrire en **gras** et en *italique*, des ~~conneries~~ bêtises, écrire des formules très complexes telles que $ax^2+bx+c=0$ et écrire du `petit code` et du gros code : | |
6 | +<!-- TODO Faire un bref résumé de ce qu'on nous demande --> | |
7 | 7 | |
8 | -```avrasmplus | |
9 | -.equ RAMEND = 0x21FF | |
10 | -.equ SPH = 0x3E ; initialisation de la pile | |
11 | -.equ SPL = 0x3D | |
8 | +# Architecture matérielle | |
12 | 9 | |
13 | -.org 0x000 | |
14 | - ; Vecteur RESET | |
15 | - jmp debut | |
10 | +## Entrées | |
16 | 11 | |
17 | -``` | |
12 | +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. | |
18 | 13 | |
19 | -Ou alors carrément récupérer le code depuis un fichier ! | |
14 | +Le capteur de température est connecté sur le convertisseur analogique-numérique numéro <!-- TODO numéro et désignation technique -->. | |
20 | 15 | |
21 | -!include(code.txt lang=avrasmplus) | |
16 | +# Étude du fonctionnement | |
22 | 17 | |
23 | -Il faut passer une ligne pour faire un nouveau paragraphe. | |
24 | -Sinon ça marche pas. | |
18 | +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. | |
25 | 19 | |
26 | -Là oui. | |
27 | 20 | |
28 | -On peut intégrer des images | |
21 | +## Menu | |
29 | 22 | |
30 | -![Afficheur 7 segments](7seg.svg) | |
23 | +Voici la hiérarchie du menu qui sera utilisé pour | |
31 | 24 | |
32 | -<!-- Et des commentaires aussi ! --> | |
33 | -<!-- TODO Enlever ce brouillon --> | |
25 | +# Configuration des interfaces | |
34 | 26 | |
35 | -# Trucs à replacer quelque part | |
27 | +## ADC | |
36 | 28 | |
37 | -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. | |
29 | +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. | |
30 | + | |
31 | +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. | |
32 | + | |
33 | +# Algorithme | |
38 | 34 | ... | ... |
README.md
... | ... | @@ -3,7 +3,7 @@ DJERABA Taky - HUBERT Thomas - PREUD'HOMME Geoffrey |
3 | 3 | |
4 | 4 | ## Compte-rendu |
5 | 5 | |
6 | -À écrire dans `CR.md`, pour différentes façons d'écrire consultez un tuto sur le Markdown. | |
6 | +À écrire dans `CR.md`, pour différentes façons d'écrire consultez un tuto sur le Markdown, ou regardez ce qu'il est possible de faire avec le fichier `demo.md` (à compiler en PDF avec `make demo.pdf`). | |
7 | 7 | |
8 | 8 | Pour générer un fichier PDF, assurez-vous d'avoir lancé `./configure` une fois sans erreur, puis lancez la commande `make`. |
9 | 9 | ... | ... |
... | ... | @@ -0,0 +1,35 @@ |
1 | +# Je suis un gros titre | |
2 | +## Il est pas gros, juste un peu enveloppé | |
3 | + | |
4 | +# Brouillon | |
5 | + | |
6 | +## Titre de second niveau | |
7 | + | |
8 | +Wouhou, on peut écrire en **gras** et en *italique*, des ~~conneries~~ bêtises, écrire des formules très complexes telles que $ax^2+bx+c=0$ et écrire du `petit code` et du gros code : | |
9 | + | |
10 | +```avrasmplus | |
11 | +.equ RAMEND = 0x21FF | |
12 | +.equ SPH = 0x3E ; initialisation de la pile | |
13 | +.equ SPL = 0x3D | |
14 | + | |
15 | +.org 0x000 | |
16 | + ; Vecteur RESET | |
17 | + jmp debut | |
18 | + | |
19 | +``` | |
20 | + | |
21 | +Ou alors carrément récupérer le code depuis un fichier ! | |
22 | + | |
23 | +!include(code.txt lang=avrasmplus) | |
24 | + | |
25 | +Il faut passer une ligne pour faire un nouveau paragraphe. | |
26 | +Sinon ça marche pas. | |
27 | + | |
28 | +Là oui. | |
29 | + | |
30 | +On peut intégrer des images | |
31 | + | |
32 | +![Afficheur 7 segments](7seg.svg) | |
33 | + | |
34 | +<!-- Et des commentaires aussi ! --> | |
35 | +<!-- TODO Enlever ce brouillon --> | ... | ... |