Skip to content

Instantly share code, notes, and snippets.

@truongtpa
Created October 27, 2022 02:46
Show Gist options
  • Select an option

  • Save truongtpa/3589899e5a9a26d468f0ee20cb137f81 to your computer and use it in GitHub Desktop.

Select an option

Save truongtpa/3589899e5a9a26d468f0ee20cb137f81 to your computer and use it in GitHub Desktop.
#define MOTORA_IN1 10
#define MOTORA_IN2 11
#define MOTORB_IN1 12
#define MOTORB_IN2 13
#define BUTTONA_TRAI 2
#define BUTTONA_PHAI 3
#define BUTTONB_TRAI 6
#define BUTTONB_PHAI 7
void setup() {
pinMode(MOTORA_IN1, OUTPUT);
pinMode(MOTORA_IN2, OUTPUT);
pinMode(MOTORB_IN1, OUTPUT);
pinMode(MOTORB_IN2, OUTPUT);
pinMode(BUTTONA_TRAI, INPUT);
pinMode(BUTTONA_PHAI, INPUT);
pinMode(BUTTONB_TRAI, INPUT);
pinMode(BUTTONB_PHAI, INPUT);
}
void dieuKhienMotor(int pinA, int pinB, char st) {
switch (st) {
case 'T':
digitalWrite(pinA, HIGH);
digitalWrite(pinB, LOW);
break;
case 'P':
digitalWrite(pinB, HIGH);
digitalWrite(pinA, LOW);
break;
default:
digitalWrite(pinB, LOW);
digitalWrite(pinA, LOW);
}
}
void loop() {
/*
Điều khiển motor A
*/
if (digitalRead(BUTTONA_TRAI) == HIGH)
dieuKhienMotor(MOTORA_IN1, MOTORA_IN2, 'T');
else if (digitalRead(BUTTONA_PHAI) == HIGH)
dieuKhienMotor(MOTORA_IN1, MOTORA_IN2, 'P');
else
dieuKhienMotor(MOTORA_IN1, MOTORA_IN2, 'D');
/*
Điều khiển motor B
*/
if (digitalRead(BUTTONB_TRAI) == HIGH)
dieuKhienMotor(MOTORB_IN1, MOTORB_IN2, 'T');
else if (digitalRead(BUTTONB_PHAI) == HIGH)
dieuKhienMotor(MOTORB_IN1, MOTORB_IN2, 'P');
else
dieuKhienMotor(MOTORB_IN1, MOTORB_IN2, 'D');
}
@truongtpa
Copy link
Author

Sơ đồ đấu nối: https://i.imgur.com/jSsVcdH.png

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment