#include <Wire.h>
#include <LiquidCrystal_I2C.h>
boolean x=0, y=0, menu=1;
int t=0, sec=0,v=0;
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() {
pinMode(A0, OUTPUT);
pinMode(A1, OUTPUT);
pinMode(2, INPUT);
pinMode(9, INPUT);
pinMode(10, INPUT);
pinMode(11, INPUT);
pinMode(12, INPUT);
lcd.init();
lcd.backlight();
lcd.print("Bienvenido");
delay(1000);
inicio();
}
void loop() {
digitalWrite(A1,0);
digitalWrite(A0,1);
if (digitalRead(9)==1){
while(digitalRead(9)==1){}
menu=1;
inicio();
}
if(digitalRead(2)==1 && x==0){
x=1;
llenado();
}
if(digitalRead(2)==0 ){
x=0;
delay(10);
}
}
void llenado(){
digitalWrite(A0,0);
delay(200);
y=1;
while (t<(sec*10)){
digitalWrite(A1,digitalRead(2));
delay(100);
t++;
lcd.setCursor(8, 1);
lcd.print((sec-(t/10)));
if (digitalRead(9)==1){
while(digitalRead(9)==1){}
menu=1;
inicio();
t=sec;
}
}
t=0;
}
void inicio(){
lcd.init();
digitalWrite(A1,0);
digitalWrite(A0,0);
while (menu==1){
lcd.setCursor(0, 0);
lcd.print(">Tiempo[s]:");
lcd.setCursor(10, 0);
lcd.print(sec);
lcd.setCursor(0, 1);
lcd.print("Velocidad:");
lcd.setCursor(10, 1);
lcd.print(v);
if (digitalRead(10)==1){
while(digitalRead(10)==1){}
sec++;
}
if (digitalRead(11)==1){
while(digitalRead(11)==1){}
sec--;
}
if (digitalRead(12)==1){
while(digitalRead(12)==1){}
menu=0;
lcd.init();
lcd.setCursor(3, 0);
lcd.print("Proceso");
digitalWrite(A0,1);
}
}
}