لم يسبق لي التعامل مع دائرة اردوينو
أمامك أربع حالات:
عدم ضغط أي Button
ضغط Button1 فقط
ضغط Button2 فقط
ضغط Button1 و Button2 معا
بالاطلاع على الكود حاولت أعيد تسمية المتغيرات لتصبح أوضح وأبسط
الحالة الأخيرة قد تحتاج تعديل حسب رغبتك.
أمامك أربع حالات:
عدم ضغط أي Button
ضغط Button1 فقط
ضغط Button2 فقط
ضغط Button1 و Button2 معا
بالاطلاع على الكود حاولت أعيد تسمية المتغيرات لتصبح أوضح وأبسط
PHP كود :
//Push Button Relay Control
int button1 = 8, relay1 = A0;
int button2 = 9, relay2 = A1;
// Variables
int valButton1 = 0;
int valButton2 = 0;
// Setup
void setup() {
Serial.begin(9600);
pinMode(button1, INPUT_PULLUP);
pinMode(relay1, OUTPUT);
pinMode(button2, INPUT_PULLUP);
pinMode(relay2, OUTPUT);
}
// Loop
void loop() {
// Read buttons
valButton1 = digitalRead(button1);
valButton2 = digitalRead(button2);
if (valButton1 == LOW && valButton2 == LOW) {
Serial.println("Light OFF");
digitalWrite(relay1, LOW); //Relay 1 OFF
digitalWrite(relay2, LOW); //Relay 2 OFF
}
if (valButton1 == HIGH && valButton2 == LOW) {
Serial.println("Light 1 ON");
digitalWrite(relay1, HIGH); //Relay 1 ON
digitalWrite(relay2, LOW); //Relay 2 OFF
}
if (valButton1 == LOW && valButton2 == HIGH) {
Serial.println("Light 2 ON");
digitalWrite(relay1, LOW); //Relay 1 OFF
digitalWrite(relay2, HIGH); //Relay 2 ON
}
if (valButton1 == HIGH && valButton2 == HIGH) {
Serial.println("Light 1&2 ON");
digitalWrite(relay1, HIGH); //Relay 1 ON
digitalWrite(relay2, HIGH); //Relay 2 ON
}
delay(100);
}
الحالة الأخيرة قد تحتاج تعديل حسب رغبتك.

