const int k_numLEDs = 4;
const int kPinLeds[k_numLEDs] = {3,4,5,6}; // LEDs connected ←!"→ to pins 3-6
volatile byte state = LOW;
void setup()
{
for(int i = 0; i < k_numLEDs; i++){
pinMode(kPinLeds[i], OUTPUT);
}
pinMode(2, INPUT_PULLUP);
pinMode(10, OUTPUT);
attachInterrupt(digitalPinToInterrupt(2), turnon_10,CHANGE );
}
void loop()
{
for(int i = 0; i < k_numLEDs; i++){;
digitalWrite(kPinLeds[i], HIGH);
delay(50);
digitalWrite(kPinLeds[i], LOW);
digitalWrite(kPinLeds[i+1], HIGH);
delay(50);
}
delay(100);
for(int i = k_numLEDs - 1; i >= 0; i--){
digitalWrite(kPinLeds[i], HIGH);
delay(50);
digitalWrite(kPinLeds[i], LOW);
digitalWrite(kPinLeds[i-1], HIGH);
}
digitalWrite(10, state);
delay(100);
}
void turnon_10 (){
state = !state;
}