#define BUTTON_1 2
#define BUTTON_2 3
#define BUTTON_3 4
#define BUTTON_4 5
#define BUTTON_5 13
#define BUTTON_6 7
#define BUTTON_7 22
#define RELAY_1 8
#define RELAY_2 9
#define RELAY_3 10
#define RELAY_4 11
#define RELAY_5 12
#define RELAY_6 6
#define RELAY_7 23
int buttonSelectvalue = 0;
void setup() {
Serial.begin(115200);
pinMode(BUTTON_1, INPUT_PULLUP);
pinMode(BUTTON_2, INPUT_PULLUP);
pinMode(BUTTON_3, INPUT_PULLUP);
pinMode(BUTTON_4, INPUT_PULLUP);
pinMode(BUTTON_5, INPUT_PULLUP);
pinMode(BUTTON_6, INPUT_PULLUP);
pinMode(BUTTON_7, INPUT_PULLUP);
pinMode(RELAY_1, OUTPUT);
pinMode(RELAY_2, OUTPUT);
pinMode(RELAY_3, OUTPUT);
pinMode(RELAY_4, OUTPUT);
pinMode(RELAY_5, OUTPUT);
pinMode(RELAY_6, OUTPUT);
pinMode(RELAY_7, OUTPUT);
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
}
void loop() {
buttonSelectvalue= (!digitalRead(BUTTON_1) * 1) + (!digitalRead(BUTTON_2) * 2) + (!digitalRead(BUTTON_3) * 4) +(!digitalRead(BUTTON_4) * 8)+(!digitalRead(BUTTON_5) * 16) +(!digitalRead(BUTTON_6) * 32)+ (!digitalRead(BUTTON_7) * 64);
Serial.println(buttonSelectvalue);
switch (buttonSelectvalue) {
case 1:
digitalWrite(RELAY_1, HIGH);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
case 2:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, HIGH);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
case 4:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, HIGH);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
case 8:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, HIGH);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
case 16:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, HIGH);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
case 32:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, HIGH);
digitalWrite(RELAY_7, LOW);
break;
case 64:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, HIGH);
break;
default:
digitalWrite(RELAY_1, LOW);
digitalWrite(RELAY_2, LOW);
digitalWrite(RELAY_3, LOW);
digitalWrite(RELAY_4, LOW);
digitalWrite(RELAY_5, LOW);
digitalWrite(RELAY_6, LOW);
digitalWrite(RELAY_7, LOW);
break;
}
}
1
2
3
4
5
6
7