#define BIA 5
#define BIB 6
#define AIA 9
#define AIB 10
int carSpeed = 200;
void setup() {
Serial.begin(9600);
pinMode(AIA, OUTPUT);
pinMode(AIB, OUTPUT);
pinMode(BIA, OUTPUT);
pinMode(BIB, OUTPUT);
}
void loop() {
if (Serial.available()) {
char command = Serial.read();
if (command == 'F' || command == 'f')
moving_forward();
}
else if (command == 'B' || command == 'b') {
moving_backward();
}
else if (command == 'L' || command == 'l') {
moving_left();
}
else if (command == 'R' || command == 'r') {
moving_right();
}
else if (command == 'S' || command == 's') {
stop_moving();
}
else {
stop_moving();
}
}
delay(100);
}
void moving_forward() {
digitalWrite(AIB, HIGH);
analogWrite(AIA, 255-carSpeed);
digitalWrite(BIB, HIGH);
analogWrite(BIA, 255-carSpeed);
}
void moving_backward() {
digitalWrite(AIB, LOW);
analogWrite(AIA, carSpeed);
digitalWrite(BIB, LOW);
analogWrite(BIA, carSpeed);
}
void moving_left() {
digitalWrite(AIB, HIGH);
analogWrite(AIA, carSpeed);
digitalWrite(BIB, LOW);
analogWrite(BIA, carSpeed);
}
void moving_right() {
digitalWrite(AIB, LOW);
analogWrite(AIA, carSpeed);
digitalWrite(BIB, HIGH);
analogWrite(BIA, carSpeed);
}
void stop_moving() {
analogWrite(AIA, LOW);
analogWrite(AIB, LOW);
digitalWrite(BIA, LOW);
digitalWrite(BIB, LOW);
}
Comments