Cours:InfoS2 tdTimerCTC : Différence entre versions
Ligne 12 : | Ligne 12 : | ||
=Génération d'un signal carré périodique= | =Génération d'un signal carré périodique= | ||
On souhaite faire clignoter une led en utilisant le timer1 d'un atmega328p. | On souhaite faire clignoter une led en utilisant le timer1 d'un atmega328p. | ||
+ | |||
+ | La fréquence du CPU est de Fcpu={{Rouge|1MHz}}. | ||
==Utilisation de la broche OC1A== | ==Utilisation de la broche OC1A== | ||
Une led est connectée sur la broche PB1 ( OC{{Rouge|1}}A ). Le timer{{Rouge|1}} peut générer directement un signal sur cette broche particulière. | Une led est connectée sur la broche PB1 ( OC{{Rouge|1}}A ). Le timer{{Rouge|1}} peut générer directement un signal sur cette broche particulière. | ||
+ | |||
+ | {{Question|Faire clignoter la led à une fréquence de 1Hz}} | ||
+ | |||
+ | <source lang=cpp> | ||
+ | #include ... | ||
+ | |||
+ | int main() | ||
+ | { | ||
+ | // configurer sortie | ||
+ | // choisir prédiviseur du timer | ||
+ | // choisir le mode CTC | ||
+ | // choisir la valeur de remise à 0 du timer | ||
+ | // activer le contrôle de la sortie par le timer | ||
+ | while(1) | ||
+ | { | ||
+ | } | ||
+ | } | ||
+ | </source> |
Version du 2 mars 2023 à 11:10
Génération d'un signal carré périodique
On souhaite faire clignoter une led en utilisant le timer1 d'un atmega328p.
La fréquence du CPU est de Fcpu=1MHz.
Utilisation de la broche OC1A
Une led est connectée sur la broche PB1 ( OC1A ). Le timer1 peut générer directement un signal sur cette broche particulière.
Faire clignoter la led à une fréquence de 1Hz
#include ...
int main()
{
// configurer sortie
// choisir prédiviseur du timer
// choisir le mode CTC
// choisir la valeur de remise à 0 du timer
// activer le contrôle de la sortie par le timer
while(1)
{
}
}