#define motorPin1 7 #define motorPin2 8 #define motorEnaPin 9 #define pbPin1 3 #define pbPin2 4 int pbVal1 = 0, pbVal2 = 0; void setup() { pinMode(motorPin1, OUTPUT); pinMode(motorPin2, OUTPUT); pinMode(motorEnaPin, OUTPUT); pinMode(pbPin1, INPUT); pinMode(pbPin2, INPUT); } void loop() { // המנוע מתחיל בתנועה digitalWrite(motorEnaPin, HIGH); digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW); pbVal1 = digitalRead(pbPin1); pbVal2 = digitalRead(pbPin2); // לחיצה על כפתור 1 יגרום לעצירה על ידי פין המהירות (פין 1 או 9) if (pbVal1 == HIGH && pbVal2 == LOW) { digitalWrite(motorEnaPin, LOW); } // לחיצה על כפתור 2 יגרום לעצירה על ידי מיתוג שני הפינים המקושרים למנוע בדוחף הזרם if (pbVal2 == HIGH && pbVal1 == LOW) { digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); } // לחיצה על שני הכפתורים יגרום להיפוך כיוון הסיבוב if (pbVal2 == HIGH && pbVal1 == HIGH) { digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); } }