Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]
digitalRead()
Description
Lit l"état (= le niveau logique) d'une broche précise en entrée numérique, et renvoie la valeur HIGH (HAUT en anglais) ou LOW (BAS en anglais).
Syntaxe
Paramètres
- broche : le numéro de la broche numérique que vous voulez lire. (int)
Valeur retournée
- Renvoie la valeur HIGH (HAUT en anglais) ou LOW (BAS en anglais)
Exemple
int ledPin = 13; // LED connectée à la broche n°13
int inPin = 7; // un bouton poussoir connecté à la broche 7
// avec une résistance de pulldown
int val = 0; // variable pour mémoriser la valeur lue
void setup()
{
pinMode(ledPin, OUTPUT); // configure la broche 13 en SORTIE
pinMode(inPin, INPUT); // configure la broche 7 en ENTREE
digitalWrite(inPin, 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
}
void loop()
{
val = digitalRead(inPin); // lit l'état de la broche en entrée
// et met le résultat dans la variable
digitalWrite(ledPin, val); // met la LED dans l'état du BP
// (càd allumée si appuyé et inversement)
}
Dans ce programme, la broche 13 reflète fidèlement l'état de la broche 7 qui est une entrée numérique.
Remarque
Si la broche numérique en entrée n'est connectée à rien, l'instruction digitalRead() peut retourner aussi bien la valeur HIGH (HAUT en anglais) ou LOW (BAS en anglais) ( et cette valeur peut changer de façon aléatoire)
Les broches analogiques peuvent être utilisées en entrée et sont désignées par les numéro 14 (entrée analogique 0) à 19 (entrée analogique 5).
NOTE : La broche numérique 13 est plus difficile à utiliser que les autres en tant qu'entrée numérique car elle est associée à une résistance et sa LED soudées sur le circuit imprimé de la carte sur la plupart des cartes. Si vous activez la résistance interne de rappel au plus de 20K, cela mettra la borche à 1,7V au lieu des 5V théoriques car la LED et la résistance associées à la broche abaisse la tension, qui est toujours considérée au niveau BAS (LOW). Ainsi, si vous devez utiliser la broche 13 en tant qu'entrée numérique, utiliser une résistance de rappel au plus externe.
Commentaires utilisateurs
Pour pouvoir lire une broche en tant qu'entrée numérique :
- configurer cette broche en entrée avec l'instruction pinMode(broche, INPUT);
- activer le "rappel au plus" interne dans le cas d'un bouton poussoir avec l'instruction digitalWrite(broche, HIGH)
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
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.