/*
Version changelog
JCS-01a
Testing syntax of switch and case construction and order of case commands
*/
#define switch1 11
#define switch2 12
#define switch3 13
#define red 8
#define yellow 9
#define green 10
#define error 7
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Test switch and case commands - JCS-01a");
pinMode(switch1, INPUT_PULLUP);
pinMode(switch2, INPUT_PULLUP);
pinMode(switch3, INPUT_PULLUP);
pinMode(red, OUTPUT);
pinMode(yellow, OUTPUT);
pinMode(green, OUTPUT);
pinMode(error, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
int Count=0;
if(digitalRead(switch1)==LOW){Count=Count+1;}
if(digitalRead(switch2)==LOW){Count=Count+2;}
if(digitalRead(switch3)==LOW){Count=Count+4;}
Serial.print("Count = ");
Serial.println(Count);
digitalWrite(red, LOW);
digitalWrite(yellow, LOW);
digitalWrite(green, LOW);
digitalWrite(error, LOW);
switch (Count) {
case 1:
digitalWrite(red, HIGH);
Serial.println(" Red ");
break;
case 2:
digitalWrite(yellow, HIGH);
Serial.println(" Yellow ");
break;
case 4:
digitalWrite(green, HIGH);
Serial.println(" Green ");
break;
}
if(Count==0||Count==3||Count>=5) {
digitalWrite(error, HIGH);
Serial.println(" Error ");
}
delay(100);
}