Module 10 boutons Arduino GRADKEY avec platine R2R 40x28mm
Cette petite platine est équipée de 10 boutons-poussoirs dont les sollicitations pourront être connues en utilisant une seule entrée de conversion analogique/numérique de votre carte Arduino.
Le raccordement à votre carte Arduino pourra se faire à l'aide d'une platine Shield intermédiaire (proposée en option). La platine est livrée avec un cordon compatible avec le standard Grove. Utilisant un principe de fonctionnement basé sur l'usage de réseaux de résistances R2R, cette platine délivre 10 valeurs de tensions différentes en fonction de la touche sollicitée.
Caractéristiques:
- Dimensions: 40 x 28 mm
Programme pour Arduino
Cet exemple permet d'afficher dans le moniteur de l'IDE Arduino, la valeur analogique délivrée par la carte ainsi que le numéro de la touche associée. Le capteur devra être raccordé sur la broche A0 de la platine d'interface Grove. Le source de ce programme est disponible dans l'onglet Documentation technique de cette page.
A noter que le module ne permet pas de gérer la sollicitation simultanée de plusieurs touches (dans ce cas de figure le numéro de la touche la plus basse chronologiquement sera retourné).
const int ADKEYPIN = A0; // Entrée A0 reliée au capteur ADKEY
int ADKEY = 0; // Variable servant à la récupération du signal du capteur
int touche = 0; // N° de la touche sollicitée
void setup() {
Serial.begin(9600); // initialisation port COM à 9600 bps
}
void loop() {
ADKEY = analogRead(ADKEYPIN); // Lecture du capteur
if (ADKEY > 1020) touche = 0;
if (ADKEY < 5) touche = 1;
if (ADKEY > 87 and ADKEY < 93) touche = 2;
if (ADKEY > 165 and ADKEY < 171) touche = 3;
if (ADKEY > 232 and ADKEY < 238) touche = 4;
if (ADKEY > 287 and ADKEY < 294) touche = 5;
if (ADKEY > 336 and ADKEY < 342) touche = 6;
if (ADKEY > 378 and ADKEY < 384) touche = 7;
if (ADKEY > 417 and ADKEY < 423) touche = 8;
if (ADKEY > 450 and ADKEY < 456) touche = 9;
if (ADKEY > 481 and ADKEY < 487) touche = 10;
Serial.print("Valeur capteur = ");
Serial.print(ADKEY);
Serial.print("\t Numero de la touche = ");
Serial.println(touche);
delay(300);
}
Vous disposez du code source dans l'onglet Documentations techniques de cette page (faire un clic droit sur le lien "Librairies et codes sources" puis choisir "Enregistrer le lien sous").
Produits associés