when we press switch 1 then seven segment display is run(0 to 9 continuously),
after that when we press the second switch(sw2) {for a second} then process stops on that digit when we press switch(sw2);
then why this program take a second to get the input from switch (sw2)?
code :-
int sw1 = 13;
int sw2 = 5;
int l1 = 12;
int l2 = 11;
int l3 = 10;
int l4 = 9;
int l5 = 8;
int l6 = 7;
int l7 = 6;
int madhe1 = 0;
int madhe2 = 0;
int thamba() {
madhe2 = digitalRead(sw2);
if (madhe2 == 0)
{
while (1)
{
madhe1 = digitalRead(sw1);
if (madhe1 == 0)
{
return 0;
}
}
}
}
void setup() {
pinMode(sw1, INPUT);
pinMode(sw2, INPUT);
pinMode(l1, OUTPUT);
pinMode(l2, OUTPUT);
pinMode(l3, OUTPUT);
pinMode(l4, OUTPUT); //0
pinMode(l5, OUTPUT);
pinMode(l6, OUTPUT);
pinMode(l7, OUTPUT);
}
void loop() {
digitalWrite(l1, HIGH);
digitalWrite(l2, HIGH);
digitalWrite(l3, HIGH);
digitalWrite(l4, HIGH);
digitalWrite(l5, HIGH);
digitalWrite(l6, HIGH);
digitalWrite(l7, HIGH);
madhe1 = digitalRead(sw1);
if (madhe1 == 0)
{
up:
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW);
digitalWrite(l5, LOW);
digitalWrite(l6, LOW);
digitalWrite(l7, HIGH);
delay(1000);
thamba();
digitalWrite(l1, HIGH);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, HIGH); //1
digitalWrite(l5, HIGH);
digitalWrite(l6, HIGH);
digitalWrite(l7, HIGH);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, HIGH);
digitalWrite(l4, LOW);
digitalWrite(l5, LOW); //2
digitalWrite(l6, HIGH);
digitalWrite(l7, LOW);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW); //3
digitalWrite(l5, HIGH);
digitalWrite(l6, HIGH);
digitalWrite(l7, LOW);
delay(1000);
thamba();
digitalWrite(l1, HIGH);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, HIGH);
digitalWrite(l5, HIGH);
digitalWrite(l6, LOW);
digitalWrite(l7, LOW);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, HIGH);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW);
digitalWrite(l5, HIGH);
digitalWrite(l6, LOW);
digitalWrite(l7, LOW);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, HIGH);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW);
digitalWrite(l5, LOW);
digitalWrite(l6, LOW);
digitalWrite(l7, LOW);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, HIGH);
digitalWrite(l5, HIGH);
digitalWrite(l6, HIGH);
digitalWrite(l7, HIGH);
delay(1000);
thamba();
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW);
digitalWrite(l5, LOW);
digitalWrite(l6, LOW);
digitalWrite(l7, LOW);
delay(1000);
digitalWrite(l1, LOW);
digitalWrite(l2, LOW);
digitalWrite(l3, LOW);
digitalWrite(l4, LOW);
digitalWrite(l5, HIGH);
digitalWrite(l6, LOW);
digitalWrite(l7, LOW);
delay(1000);
thamba();
goto up;
}
}