Référence du Langage Arduino : Mini | Standard | Etendue | Librairies | Comparaison
Réalise une pause dans l'exécution du programme pour la durée (en millisecondes) indiquée en paramètre. (=Pour mémoire, il y a 1000 millisecondes dans une seconde...!
delay (ms);
Aucune
int ledPin = 13; // Une LED est connectée à la broche 13
void setup() // la fonction setup() est exécutée 1 seule fois
{
pinMode(ledPin, OUTPUT); // met la broche numérique en sortie
}
void loop()
{
digitalWrite(ledPin, HIGH); // allume la LED
delay(1000); // attendre 1 seconde
digitalWrite(ledPin, LOW); // éteint la LED
delay(1000); // attendre une seconde
} // la fonction loop() boucle sans fin
Bien qu'il soit facile de faire clignoter une LED avec l'instruction delay(), et de nombreux programmes utilisent de courtes pauses pour de nombreuses tâches telles que la commutation, l'utilisation de l'instruction delay() a des inconvénients non négligeables. Aucune autre lecture de valeur sur un capteur, opération mathématique ou manipulation de bits ne peut avoir lieu durant une instruction delay(), et en effet, cela fait stopper toute autre activité le temps de l'exécution de la pause. Pour une autre approche du contrôle des temporisations, voir l'instruction millis() et les programmes d'exemples cités à la suite. Les programmeurs avancés évitent habituellement d'utiliser l'instruction delay() pour des pauses supérieures à 10 millisecondes, à moins que le programme Arduino ne soit très simple.
Certaines chose se font cependant même lorsque l'instruction delay() est exécutée et contrôle le microcontrôleur ATmega, car l'instruction delay() ne désactive pas les interruptions. Les communications série qui arrivent sur la broche RX sont prises en compte, la génération d'impulsion PWM (analogWrite) et l'état des broches stables sont maintenus, et les interruptions fonctionnent comme elles le doivent.
Page d'accueil de la référence Arduino en français
Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino.
Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.
La présente traduction française commentée a été réalisée par Xavier HINAULT (2010) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.