Fablab ado > arduino : 2 RGB, 2 boutons, 1 buzzer
Bonjour,
toujours dans l’optique de créer un pong 1d (ruban led), nous allons travailler avec 2 led RGB, 2 boutons poussoir et un buzzer.
Objectif :
les 2 leds éclairent en vert
lorsque nous appuyons sur le bouton 1 :
les leds éclairent en rouge et un bip aigu retentit
lorsque nous appuyons sur le bouton 2 :
les leds éclairent en bleu et un bip grave retentit
Bonne chance !
voici le code :
//led RGB 1
int ledbleue1=1;
int ledverte1=2;
int ledrouge1=3;
//led RGB 2
int ledbleue2=9;
int ledverte2=10;
int ledrouge2=11;
//buuzzer branché en pin6
int PIN_BUZZER=6;
//entrée bouton poussoir 1
int bouton1=A1;
//entrée bouton poussoir 2
int bouton2=A2;
void setColor1(int red, int green, int blue)
{
analogWrite(ledrouge1, red);
analogWrite(ledverte1, green);
analogWrite(ledbleue1, blue);
}
void setColor2(int red, int green, int blue)
{
analogWrite(ledrouge2, red);
analogWrite(ledverte2, green);
analogWrite(ledbleue2, blue);
}
void setup()
{
// put your setup code here, to run once:
pinMode(bouton1,INPUT);
pinMode(bouton2,INPUT);
pinMode(ledbleue1, OUTPUT);
pinMode(ledverte1, OUTPUT);
pinMode(ledrouge1, OUTPUT);
pinMode(ledbleue2, OUTPUT);
pinMode(ledverte2, OUTPUT);
pinMode(ledrouge2, OUTPUT);
pinMode(PIN_BUZZER, OUTPUT);
}
void loop()
{
// put your main code here, to run repeatedly:
boolean etatBouton1=digitalRead(bouton1);
boolean etatBouton2=digitalRead(bouton2);
if (etatBouton1==LOW)//test si bouton levé
{
setColor1(0, 255, 0); // green
setColor2(0, 255, 0); // green
delay(500);
}
if (etatBouton1==HIGH)//test si bouton actionné
{
setColor1(255, 0, 0); // rouge
setColor2(255, 0, 0); // rouge
tone(PIN_BUZZER, 2500, 300); //son aigu
delay(500);
}
if (etatBouton2==HIGH)//test si bouton actionné
{
setColor1(0, 0, 255); // bleu
setColor2(0, 0, 255); // bleu
tone(PIN_BUZZER, 1600, 300); //son grave
delay(500);
}
delay(50);
}
Partager cette page