I want to code something like a "timer" (don't know what to call it) in an if else statement in my arduino uno.
Basically I have 2 buttons. If the button1 is pressed and button2 is also pressed in a certain amount of time (let's say 3 seconds), the code will execute. If button1 is pressed but button2 is not pressed within 3 seconds then it will loop back up. How do I go about writing this code?
I've included a flowchart to make my question clearer.
Thanks all :)
if(digitalRead(button1) == LOW) // this is where I need help
{
if(digitalRead(selectbutton) == LOW)
{
for(x=1; x<=30; x++)
{
digitalWrite(dir, HIGH);
delayMicroseconds(10);
time_now = millis();
digitalWrite(led, HIGH);
while(millis() < time_now + 50)
{
}
time_now = millis();
digitalWrite(led, LOW);
while(millis() < time_now + 50)
{
}
}
x=0;
}
}
else if(digitalRead(button2) == LOW) //same here >_<
{
if(digitalRead(selectbutton) == LOW)
{
for(x=1; x<=10; x++)
{
digitalWrite(dir, LOW);
delayMicroseconds(10);
time_now = millis();
digitalWrite(led, HIGH);
while(millis() < time_now + 150)
{
}
time_now = millis();
digitalWrite(led, LOW);
while(millis() < time_now + 150)
{
}
}
x=0;
}
}
}
