#define btn1 2
bool btnstate1=0;
bool btnprevstate1=0;
void setup() {
Serial.begin(115200);
pinMode(LED_BUILTIN, OUTPUT);
pinMode(btn1, INPUT);
Serial.println("Start Program");
}
static double ti=3000; // time interval
// static double pvtime=millis(); // previous time
static double pvtime=0 ; // previous time
double elaps=0;
void loop() {
if(digitalRead(btn1) == HIGH){
btnprevstate1 =1;
checktray1();
}
else{
btnprevstate1=0;
}
Serial.print("Button 1 Prev =");
Serial.println(btnprevstate1);
Serial.print("pvtime =");
Serial.println(pvtime);
}
void checktray1(){
btnstate1=digitalRead(btn1);
if(btnprevstate1 =1){
//digitalWrite(LED_BUILTIN,HIGH);
elaps=millis()-pvtime; // elaps time
if (elaps>=ti){
//pvtime=(millis()+ti-elaps);
elaps=millis()-ti;
digitalWrite(LED_BUILTIN,LOW);
//Serial.println(countDown);
}
else{
digitalWrite(LED_BUILTIN,HIGH);
}
}
else {
pvtime=millis();
//digitalWrite(LED_BUILTIN,HIGH);
}
Serial.print("pvtime=");
Serial.println(pvtime);
Serial.print("elaps=");
Serial.println(elaps);
}