delay()

Description

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...!

Syntaxe

delay (ms);

Paramètres

  • ms (unsigned long): le nombre de millisecondes que dure la pause

Valeurs Renvoyées

  • Aucune

Exemple

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

※ Remarque:

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.

Voir Également

Please note: These are affiliate links. If you buy the components through these links, We may get a commission at no extra cost to you. We appreciate it.