![]() |
AvrIO
1.4.5
Bibliothèque C modulaire pour ATMEL AVR
|
Ce module fournit des fonctions de temporisation qui permettent d'attendre un temps déterminé en millisecondes ou en microsecondes.
![]() |
Fonctions | |
void | vDelayWaitMs (time_t usMs) |
Temporisation en millisecondes. Plus de détails... | |
ticks_t | xDelayMsToTicks (time_t xTimeMs) |
Convertit une valeur de temps (millisecondes) en ticks. | |
time_t | xDelayTicksToMs (ticks_t xTicks) |
Convertit une valeur de ticks en millisecondes. | |
Macros | |
#define | DAYS(d) (d*HOURS(24)) |
Permet de convertir un intervalle de jours en millisecondes. | |
#define | delay_ms(__ms) vDelayWaitMs(__ms) |
Temporisation en millisecondes. Plus de détails... | |
#define | delay_us(__us) |
Temporisation en microsecondes. Plus de détails... | |
#define | DHMS(d, h, m, s) (DAYS(d)+HOURS(h)+MINUTES(m)+SECONDS(s)) |
Permet de convertir un intervalle de (jours, heures, minutes, secondes) en millisecondes. | |
#define | HMS(h, m, s) (HOURS(h)+MINUTES(m)+SECONDS(s)) |
Permet de convertir un intervalle de (heures, minutes, secondes) en millisecondes. | |
#define | HOURS(h) (h*MINUTES(60)) |
Permet de convertir un intervalle de heures en millisecondes. | |
#define | MINUTES(m) (m*SECONDS(60)) |
Permet de convertir un intervalle de minutes en millisecondes. | |
#define | SECONDS(s) (1000L*s) |
Permet de convertir un intervalle de secondes en millisecondes. | |
#define | WDHMS(w, d, h, m, s) (WEEKS(w)+DAYS(d)+HOURS(h)+MINUTES(m)+SECONDS(s)) |
Permet de convertir un intervalle de (semaines, jours, heures, minutes, secondes) en millisecondes. | |
#define | WEEKS(w) (w*DAYS(7)) |
Permet de convertir un intervalle de semaines en millisecondes. | |
#define delay_ms | ( | __ms | ) | vDelayWaitMs(__ms) |
Temporisation en millisecondes.
Synonyme de vDelayWaitMs() pour la compatibilité avec d'autres bibliothèques.
__ms | nombre de millisecondes (paramètre constant obligatoirement) |
#define delay_us | ( | __us | ) |
Temporisation en microsecondes.
La temporisation s'effectue par des boucles. Cette fonction doit être utilisée pour des petits délais et avec prudence dans une contexte "temps réel".
__us | nombre de microsecondes (paramètre constant obligatoirement) |
void vDelayWaitMs | ( | time_t | usMs | ) |
Temporisation en millisecondes.
Si la macro AVRIO_TASK_ENABLE n'est pas définie à la compilation, l'implémentation utilise des fonctions en lignes qui utilisent des boucles. Les calculs de temps sont effectués par le préprocesseur si une optimisation est enclenchée.
Dans le cas où la macro AVRIO_TASK_ENABLE est définie, la temporisation est effectuée par la routine d'inrerruption du timer utilisé par le module Multitâche collaboratif ou Noyau temps réel AvrX
usMs | délai de temporisation en millisecondes |