Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define INT_A 2 // control the left motor direction pin D2
- #define INT_B 4 // control the right motor direction pin D4
- #define left_A 9 // define the left motor speed control pin as D9
- #define right_B 5 // define the right motor speed control pin as D5
- void setup()
- {
- Serial.begin(9600);
- pinMode(INT_A, OUTPUT); // set the motor control pin as OUTPUT
- pinMode(INT_B, OUTPUT);
- pinMode(left_A, OUTPUT);
- pinMode(right_B, OUTPUT);
- }
- void loop() {
- front();
- delay(1000);
- back();
- delay(1000);
- left();
- delay(1000);
- right();
- delay(1000);
- }//end of loop
- // go forward
- void front()
- {
- digitalWrite(INT_A, LOW); // control the left motor turn forward
- digitalWrite(INT_B, LOW); // control the right motor turn forward
- analogWrite(left_A, 200); // set the two motors’ speed(PWM=200)
- analogWrite(right_B, 200);
- }
- // backward
- void back()
- {
- digitalWrite(INT_A, HIGH); // control the left motor turn backward
- digitalWrite(INT_B, HIGH); // control the right motor turn backward
- analogWrite(left_A, 200); // set the two motors’ speed (PWM=200)
- analogWrite(right_B, 200);
- }
- // turn left
- void left()
- {
- digitalWrite(INT_A, HIGH); // control the left motor turn backward
- digitalWrite(INT_B, LOW); // control the right motor turn forward
- analogWrite(left_A, 100); // set the two motors’ speed(PWM为100)
- analogWrite(right_B, 100);
- }
- // turn right
- void right()
- {
- digitalWrite(INT_A, LOW); // control the left motor turn forward
- digitalWrite(INT_B, HIGH); // control the right motor turn backward
- analogWrite(left_A, 100); // two motors’ speed(PWM为100)
- analogWrite(right_B, 100);
- }
- // stop
- void Stop()
- {
- digitalWrite(INT_A, LOW);
- digitalWrite(INT_B, LOW);
- analogWrite(left_A, 0); // both PWM are 0
- analogWrite(right_B, 0);
- }
Advertisement
Add Comment
Please, Sign In to add comment