Cours:InfoEmbarqueeConcommationMicroC : Différence entre versions
Ligne 1 : | Ligne 1 : | ||
− | = | + | =Attiny841= |
− | * [https://ww1.microchip.com/downloads/ | + | * [https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-8495-8-bit-AVR-Microcontrollers-ATtiny441-ATtiny841_Datasheet.pdf datasheetAttiny841] |
==support utilisé== | ==support utilisé== |
Version du 2 septembre 2024 à 10:34
Attiny841
support utilisé
Les schémas suivants vous permettent :
- de comprendre sur quel état logique les leds s'allument
- de trouver la liste des sorties
- d'associer chaque led avec un numéro de patte
|
|
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 affiche un nombre aléatoire
- Retour au mode faible consommation après quelques secondes
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 Attiny10.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