#define led1 13
#define led2 12
#define led3 11
#define led4 10
#define interruptPin1 3
#define interruptPin2 2
volatile int num = 100;
///volatile byte state = 0;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(interruptPin1, INPUT_PULLUP);
pinMode(interruptPin2, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(interruptPin1), increment, FALLING);
attachInterrupt(digitalPinToInterrupt(interruptPin2), decrement, FALLING);
Serial.begin(9600);
}
void loop() {
Serial.println(num);
digitalWrite(led1, HIGH);
delay(num);
digitalWrite(led2, HIGH);
delay(num);
digitalWrite(led3, HIGH);
delay(num);
digitalWrite(led4, HIGH);
delay(num);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
delay(num);
}
void increment() {
(num < 2000) ? num+= 500: num = 100;
digitalWrite(led1, num);
digitalWrite(led2, num);
digitalWrite(led3, num);
digitalWrite(led4, num);
}
void decrement() {
(num>100)? num-=500:num=2000;
digitalWrite(led1, num);
digitalWrite(led2, num);
digitalWrite(led3, num);
digitalWrite(led4, num);
}