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
digitalRead(broche)
Paramètres
- broche: le numéro de la broche numérique que vous voulez lire. (int)
Valeurs Renvoyées
- 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).
int ledPin = A5; // LED connected to digital pin A5
int inPin = A0; // pushbutton connected to digital pin A0
int val = 0; // variable to store the read value
void setup() {
pinMode(ledPin, OUTPUT); // sets the digital pin A5 as output
pinMode(inPin, INPUT); // sets the digital pin A0 as input
}
void loop() {
val = digitalRead(inPin); // read the input pin
digitalWrite(ledPin, val); // sets the LED to the button's value
}
- 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.
※ ARDUINO BUY RECOMMENDATION
Arduino UNO R3 | |
Arduino Starter Kit |
Please note: These are Amazon affiliate links. If you buy the components through these links, We will get a commission at no extra cost to you. We appreciate it.