#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#include <Servo.h>
Servo servo1;
Servo servo2;
int valeur1; //valeur du potentiomètre1
int valeur2; //valeur du potentiomètre2
int administrator_code1 = 0; //code administrateur potentimomètre1 (définit au démarrage)
int administrator_code2 = 0; //code administrateur potentimomètre2 (définit au démarrage)
int bouton_changer_code = 3;
int bouton_validation = 4;
int potentiometre1 = A0;
int potentiometre2 = A1;
int actif_bouton_valid;
void setup() {
Serial.begin(9600);
pinMode(A0,INPUT);
servo1.attach(5);
servo2.attach(6);
pinMode(bouton_changer_code, INPUT);
digitalWrite(bouton_changer_code, LOW);
pinMode(bouton_validation, INPUT);
digitalWrite(bouton_validation, LOW);
lcd.begin(16, 2);
lcd.print("Entrer le code:");
actif_bouton_valid = 0;
}
void loop() {
valeur1 = analogRead(potentiometre1);
valeur2 = analogRead(potentiometre2);
lcd.setCursor(0, 1);
lcd.print(valeur1);
lcd.print(" ");
lcd.setCursor(6, 1);
lcd.print(valeur2);
lcd.print(" ");
if(digitalRead(bouton_changer_code) == HIGH){
if(valeur1 != administrator_code1 or valeur2 != administrator_code2){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Code admin");
lcd.setCursor(0, 1);
lcd.print("incorrect");
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Entrer le code:");
}
else{
changer_code();
}
}
if(digitalRead(bouton_validation) == HIGH && actif_bouton_valid == 1){
administrator_code1 = valeur1;
administrator_code2 = valeur2;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Code adm modifie");
actif_bouton_valid = 0;
}
if(administrator_code1 == valeur1 && administrator_code2 == valeur2){
servo1.write(90);
servo2.write(90);
}
else{
servo1.write(0);
servo2.write(0);
}
}
void changer_code(){
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Entrer nouveau");
lcd.setCursor(0, 1);
lcd.print("code administrateur:");
delay(1000);
lcd.clear();
lcd.print("Nouveau code:");
lcd.setCursor(0, 1);
lcd.print(valeur1);
lcd.print(" ");
lcd.setCursor(1, 6);
lcd.print(valeur2);
lcd.print(" ");
actif_bouton_valid = 1;
/*administrator_code1 = valeur1;
administrator_code2 = valeur2;*/
}