Cours:InfoEmbarqueeConcommationMicroC : Différence entre versions
(→Travail à réaliser) |
(→Ressources) |
||
(3 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | [[Media:Systèmes_embarqués_1.pdf]] | ||
+ | |||
+ | https://descartes.net/package_drazzy.com_index.json | ||
+ | |||
=Attiny841= | =Attiny841= | ||
Ligne 47 : | Ligne 51 : | ||
***loop_until_bit_is_set | ***loop_until_bit_is_set | ||
**PORT(A/B/C..) : modifier les sorties | **PORT(A/B/C..) : modifier les sorties | ||
+ | *générer le fichier lss | ||
+ | avr-objdump -S Blink.cpp.elf | ||
=Travail à réaliser= | =Travail à réaliser= | ||
Ligne 54 : | Ligne 60 : | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! Fréquence || Fmax || Fmax || 8MHz || 1MHz || 1MHz | + | ! Fréquence || Fmax || Fmax || 8MHz || 1MHz || 1MHz || 32kHz || 32kHz |
|- | |- | ||
− | ! Tension || 5V || Umin || 5V || 5V || 3,3V | + | ! Tension || 5V || Umin || 5V || 5V || 3,3V || 3,3V || 1,7V |
|- | |- | ||
− | ! Consommation || || | + | ! Consommation || || || || || || || |
|} | |} | ||
Version actuelle datée du 23 septembre 2024 à 16:54
Media:Systèmes_embarqués_1.pdf
https://descartes.net/package_drazzy.com_index.json
Attiny841
support utilisé
Voici le schéma de la carte que vous utiliserez :
Sleep modes
Afin de limiter la consommation de la carte, nous allons utiliser les modes d'économie d'énergie disponibles sur le µcontrôleur utilisé.
Le principe sera le suivant :
- On place le µcontrôleur dans le mode d'économie d'énergie choisi -> le programme s'arrête et il faut un événement pour sortir de ce mode faible consommation
- Le bouton déclenche une interruption externe permettant de sortir du mode d'économie d'énergie
- On allume 1 led
- Retour au mode faible consommation après quelques secondes, en prenant soin d'éteindre la led
Vous vous servirez des fonctions disponibles dans le fichier avr/sleep.h pour passer en économie d'énergie.
Les différents modes sont détaillés Attiny841.pdf dans la partie 7. Le tableau donne la correspondance entre le mode de consommation et la valeur à utiliser dans les fonctions du fichier avr/sleep.h.
Sleep Mode | valeur programme c |
---|---|
idle | SLEEP_MODE_IDLE |
ADC Noise Reduction | SLEEP_MODE_ADC |
Standby | SLEEP_MODE_PWR_DOWN |
Power-Down | SLEEP_MODE_STANDBY |
Ressources
- Registres utiles
- DDR(A/B/C..) : direction
- 1 -> sortie
- 0 -> entrée
- PIN(A/B/C..) : état des entrées
- #include <util/sfr_defs.h>
- if bit_is_set(PINA,PA0) ... (bit_is_clear)
- loop_until_bit_is_set
- PORT(A/B/C..) : modifier les sorties
- DDR(A/B/C..) : direction
- générer le fichier lss
avr-objdump -S Blink.cpp.elf
Travail à réaliser
clock source partie 6
Fréquence | Fmax | Fmax | 8MHz | 1MHz | 1MHz | 32kHz | 32kHz |
---|---|---|---|---|---|---|---|
Tension | 5V | Umin | 5V | 5V | 3,3V | 3,3V | 1,7V |
Consommation |
Bilan
- Influence de Ualim
- consommation statique/dynamique (commutation)
- Fmax
- Influence de Fcpu
- consommation statique/dynamique (commutation)
- Umini