Cours:Shieldinfo : Différence entre versions
(→Boutons) |
(→Boutons) |
||
Ligne 19 : | Ligne 19 : | ||
|} | |} | ||
− | == | + | =Principe d'utilisation= |
<source lang=c> | <source lang=c> | ||
Ligne 40 : | Ligne 40 : | ||
bpEtat[i]=digitalRead(bpPin[i]); // Lecture des nouveaux états | bpEtat[i]=digitalRead(bpPin[i]); // Lecture des nouveaux états | ||
} | } | ||
+ | if ((bpEtat[0]==0)&&(bpAncien[0]==1)) // En cas d'appui sur bp0 | ||
+ | { | ||
+ | ...... | ||
+ | } | ||
+ | ..... | ||
} | } | ||
Version du 18 juin 2013 à 17:58
Description
Boutons
description
Le shield comporte 4 boutons, dont 2 possèdent une interruption spécifique comme indiqué dans le tableau suivant :
Bouton | Position | Arduino Pin | Interruption | Résistance de tirage |
---|---|---|---|---|
bp0 | Bas Gauche | 2 | 0 | Pull Up |
bp1 | Haut Gauche | 3 | 1 | Pull Up |
bp2 | Bas Droite | A0 | Pull Down | |
bp3 | Haut Droite | A1 | Pull Down |
Principe d'utilisation
const char bpPin[4]={2,3,A0,A1}; // Position physique des boutons
char bpEtat[4];
char bpAncien[4];
void setup()
{
char i;
for (i=0;i<4;i++) pinMode(bpPin[i],INPUT); // Déclaration des 4 entrées
}
void loop()
{
char i;
for (i=0;i<4;i++)
{
bpAncien[i]=bpEtat[i]; // Conservation des états précédents
bpEtat[i]=digitalRead(bpPin[i]); // Lecture des nouveaux états
}
if ((bpEtat[0]==0)&&(bpAncien[0]==1)) // En cas d'appui sur bp0
{
......
}
.....
}