Main

Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]

digitalWrite()


Description

Met un niveau logique HIGH (HAUT en anglais) ou LOW (BAS en anglais) sur une broche numérique. Si la broche a été configurée en SORTIE avec l'instruction pinMode(), sa tension est mise à la valeur correspondante : 5V (ou 3.3V sur les cartes Arduino 3.3V) pour le niveau HAUT, 0V (masse) pour le niveau BAS.

Syntaxe


digitalWrite(broche, valeur)
 

Paramètres

  • broche: le numéro de la broche de la carte Arduino
  • valeur : HIGH ou LOW (ou bien 1 ou 0)

Valeur retournée

Aucune

Exemple


int ledPin = 13;                 // LED connectée à la broche numérique n° 13

void setup()
{
  pinMode(ledPin, OUTPUT);      // met la broche utilisée avec la LED en SORTIE
}

void loop()
{
  digitalWrite(ledPin, HIGH);   // allume la LED
  delay(1000);                  // pause 1 seconde
  digitalWrite(ledPin, LOW);    // éteint la LED
  delay(1000);                  // pause 1 seconde
}
 

Ce programme met la broche 13 au niveau HAUT (=1), fait une pause de 1 seconde, puis met la broche au niveau BAS (=0), fait une nouvelle pause d'une seconde, puis le programme boucle.

Remarque

Les broches analogiques peuvent être utilisées en tant que broches numériques, représentées par les nombres 14 (entrée analogique 0) à 19 (entrée analogique 5).

Si la broche est configurée en ENTREE, écrire un niveau HAUT sur cette broche a pour effet d'activer la résistance interne de 20K de "rappel au plus" (pullup) sur cette broche (voir le tutoriel sur les broches numériques). A l'inverse, mettre un niveau BAS sur cette broche en ENTREE désactivera le pullup interne. Exemple :


pinMode(pin, INPUT);           // configure la broche en entrée
digitalWrite(pin, HIGH);       // écrit la valeur HIGH (=1) sur la broche en entrée
                             // ce qui active la résistance de "rappel au +" (pullup) au plus de la broche

Commentaires utilisateurs

Cette instruction met la valeur 0/1 dans le bit de donnée qui est associé à chaque broche, ce qui explique qu'on puisse le mettre à 1, même si la broche est en entrée.

Ne pas oublier qu'une broche numérique ne peut fournir que 40mA (milliampères) tant en entrée qu'une sortie, et que l'ensemble des broches de la carte Arduino ne peut fournir que 200mA. Par conséquent, limiter l'intensité utilisée pour chaque broche à une dizaine de mA. par des résistances adaptées : 270 Ohms pour une LED par exemple (ce qui fait environ 13mA sur la broche).

Voir également :


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 ou à l'adresse suivante : support_at_mon-club-elec_point_fr

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-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.