void setup() {
Serial.begin(9600) ;
}
void loop() {
Serial.println("Winter is coming !") ;
Serial.println(" ") ;
delay(500) ;
}
Bouton poussoir seul¶
byte BPpin = 4, BPvaleur ;
// A mettre dans setup
pinMode(BPpin,INPUT) ;
// A mettre dans loop
BPvaleur = digitalRead(BPpin) ;
Diode avec commande logique¶
// COMMANDE LOGIQUE
byte Ledpin = 10 ;
// A mettre dans setup
pinMode(Ledpin, OUTPUT) ;
// A mettre dans loop
digitalWrite(Ledpin, 1) ;
Potentiomètre¶
byte Potpin = A2 ;
int Potvaleur1023 ;
// A mettre dans setup
pinMode(Potpin, INPUT) ;
// A mettre dans loop
Potvaleur1023 = analogRead(Potpin) ;
Diode avec commande pseudo-analogique¶
byte Ledpin = 10 ;
int Potvaleur255 ;
// A mettre dans setup
pinMode(Ledpin,OUTPUT) ;
// A mettre dans loop
Potvaleur255 = map(Potvaleur1023, 0, 1023, 0, 255);
analogWrite(Ledpin, Potvaleur255);
byte CApin=2, CBpin=3; // broches des codeurs A et B. Codeur A sur interruption 0
volatile int inc=0; // nombre d incréments. Le mot clef volatile est obligatoire ici
// A mettre dans setup
pinMode(CApin,INPUT);
pinMode(CBpin,INPUT);
attachInterrupt(0,fcodeurA,CHANGE);
// A mettre en dehors des fonctions setup et loop
// La fonction modifie le nombre d'incréments à chaque interruption
void fcodeurA() { // Incrémente (ou décrémente inc en mettant inc--)
if(digitalRead(CApin)==digitalRead(CBpin)) inc++ ;
else inc--;
}
long T0,T1;
long dT=20000; // pas de temps en microsecondes
// A mettre dans loop
T0=micros(); // en début de la fonction loop
do { // en fin de fonction setup
T1=micros();
} while (T1-T0<dT);