// forum dot arduino.cc/t/binary-counter-led-project-issue/1438696
// https <colon> //wokwi.com/projects/460881036579813377
const byte led0 = 10;
const byte led1 = 11;
const byte led2 = 12;
const byte led3 = 13;
void setup() {
pinMode(led0, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
/*
int numArray1[8] = {0,2,4,6,8,10,12,14};
int numArray2[8] = {0,1,4,5,8,9,12,13};
int numArray3[8] = {0,1,2,3,8,9,10,11};
int numArray4[8] = {0,1,2,3,4,5,6,7};
*/
byte counter;
void loop() {
delay(777);
switch (counter) {
case 0 :
case 2 :
case 4 :
case 6 :
case 8 :
case 10 :
case 12 :
case 14 :
digitalWrite(led0, LOW);
break;
default :
digitalWrite(led0, HIGH);
}
switch (counter) {
case 0 ... 1 :
case 4 ... 5 :
case 8 ... 9 :
case 12 ... 13 :
digitalWrite(led1, LOW);
break;
default :
digitalWrite(led1, HIGH);
}
switch (counter) {
case 0 ... 3 :
case 8 ... 11 :
digitalWrite(led2, LOW);
break;
default :
digitalWrite(led2, HIGH);
}
switch (counter) {
case 0 ... 7 :
digitalWrite(led3, LOW);
break;
default :
digitalWrite(led3, HIGH);
}
counter++;
if (counter >= 16) counter = 0;
}