Bonjour,
Alors je vous explique je suis en train de faire un distributeur de boisson et je voudrais mettre un capteur de distance pour que quand le capteur capte le verre alors les boutons sont actifs sinon les boutons sont désactivé si quelqu'un peut m'aider à faire ça ça serait très gentil
Les boutons sont des boutons poussoir de pin.
Merci.
#include<Wire.h>
#include <LiquidCrystal_I2C.h>LiquidCrystal_I2C lcd(0x27,16,2);
void setup(){
pinMode(2,INPUT);
pinMode(3,INPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);}
void loop(){
int a;
int b;
int c;
int d;
int e;a = digitalRead(2); // petit verre sirop grenadine 5500 eau 7500
b = 1;
c = digitalRead(3);
d = digitalRead(4);
e = digitalRead(5);if(a==b)// c = digitalRead(2) // bouton #1
{
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("texte 1er ligne"); //texte 1er ligne
lcd.setCursor(0,1);
lcd.print("texte 2eme ligne"); //texte 2eme ligne
digitalWrite(13,HIGH);
delay(0); //Temps boutton #2 pin 13
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
delay(0); //Temps boutton #2 pin 12
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
delay(0); //Temps boutton #2 pin 11
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
delay(0); //Temps boutton #2 pin 10
digitalWrite(10,LOW);
lcd.init();
lcd.backlight();
lcd.setCursor(4,0);
lcd.print("Boisson"); //message fin de service 1er ligne
lcd.setCursor(4,1);
lcd.print("Terminee"); //message fin de service 2eme ligne
delay(2000);
lcd.init();
lcd.backlight();
lcd.setCursor(5,0);
lcd.print("Choix"); //message initial 1er ligne
lcd.setCursor(2,1);
lcd.print("de la boisson"); //message initial 2er ligne
}
if(c==b)// c = digitalRead(2) // bouton #2
{
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("texte 1er ligne"); //texte 1er ligne
lcd.setCursor(0,1);
lcd.print("texte 2eme ligne"); //texte 2eme ligne
digitalWrite(13,HIGH);
delay(0); //Temps boutton #2 pin 13
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
delay(0); //Temps boutton #2 pin 12
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
delay(0); //Temps boutton #2 pin 11
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
delay(0); //Temps boutton #2 pin 10
digitalWrite(10,LOW);
lcd.init();
lcd.backlight();
lcd.setCursor(4,0);
lcd.print("Boisson"); //message fin de service 1er ligne
lcd.setCursor(4,1);
lcd.print("Terminee"); //message fin de service 2eme ligne
delay(2000);
lcd.init();
lcd.backlight();
lcd.setCursor(5,0);
lcd.print("Choix"); //message initial 1er ligne
lcd.setCursor(2,1);
lcd.print("de la boisson"); //message initial 2er ligne
}
if(d==b)// c = digitalRead(2) // bouton #3
{
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("texte 1er ligne"); //texte 1er ligne
lcd.setCursor(0,1);
lcd.print("texte 2eme ligne"); //texte 2eme ligne
digitalWrite(13,HIGH);
delay(0); //Temps boutton #2 pin 13
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
delay(0); //Temps boutton #2 pin 12
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
delay(0); //Temps boutton #2 pin 11
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
delay(0); //Temps boutton #2 pin 10
digitalWrite(10,LOW);
lcd.init();
lcd.backlight();
lcd.setCursor(4,0);
lcd.print("Boisson"); //message fin de service 1er ligne
lcd.setCursor(4,1);
lcd.print("Terminee"); //message fin de service 2eme ligne
delay(2000);
lcd.init();
lcd.backlight();
lcd.setCursor(5,0);
lcd.print("Choix"); //message initial 1er ligne
lcd.setCursor(2,1);
lcd.print("de la boisson"); //message initial 2er ligne
}
if(e==b)// c = digitalRead(2) // bouton #4
{
lcd.init();
lcd.backlight();
lcd.setCursor(6,0);
lcd.print("EAU"); //texte 1er ligne
lcd.setCursor(3,1);
lcd.print("Grenadine"); //texte 2eme ligne
digitalWrite(13,HIGH);
delay(0); //Temps boutton #2 pin 13
digitalWrite(13,LOW);
digitalWrite(12,HIGH);
delay(0); //Temps boutton #2 pin 12
digitalWrite(12,LOW);
digitalWrite(11,HIGH);
delay(0); //Temps boutton #2 pin 11
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
delay(0); //Temps boutton #2 pin 10
digitalWrite(10,LOW);
lcd.init();
lcd.backlight();
lcd.setCursor(4,0);
lcd.print("Boisson"); //message fin de service 1er ligne
lcd.setCursor(4,1);
lcd.print("Terminee"); //message fin de service 2eme ligne
delay(2000);
lcd.init();
lcd.backlight();
lcd.setCursor(5,0);
lcd.print("Choix"); //message initial 1er ligne
lcd.setCursor(2,1);
lcd.print("de la boisson"); //message initial 2er ligne
}}