I'm using Xbee connection between the Arduinos. this is way I'm using the Serial Monitor.
Is it possible to use Lefty's idea with the Xbee?
Thanks Guys
The code is:
/*
MOBOT BTCar
Author: Daniel Garrote
Project: MOBOT
Project URL: www.mobot.es
*/
int forward = 12; // Pin 12 - Forward
int reverse = 11; // Pin 11 - Reverse
int left = 10; // Pin 10 - Left
int right = 9; // Pin 9 - Right
char val; // Variable to receive data from the serial port
void setup() {
// initialize the digital pins as output
pinMode(forward, OUTPUT);
pinMode(reverse, OUTPUT);
pinMode(left, OUTPUT);
pinMode(right, OUTPUT);
Serial.begin(9600); // Start serial communication at 9600bps
}
// Fordward action
void go_forward() {
digitalWrite(forward, HIGH);
digitalWrite(turbo, LOW);
digitalWrite(reverse, LOW);
}
// Stop Forward action
void stop_go_forward() {
digitalWrite(forward, LOW);
}
// Reverse action
void go_reverse() {
digitalWrite(reverse, HIGH);
digitalWrite(forward, LOW);
digitalWrite(turbo, LOW);
digitalWrite(reverse_lights, HIGH);
}
// Stop Reverse action
void stop_go_reverse() {
digitalWrite(reverse, LOW);
digitalWrite(reverse_lights, LOW);
}
// Left action
void go_left() {
digitalWrite(left, HIGH);
digitalWrite(right, LOW);
}
// Right action
void go_right() {
digitalWrite(right, HIGH);
digitalWrite(left, LOW);
}
// Stop turn action
void stop_turn() {
digitalWrite(right, LOW);
digitalWrite(left, LOW);
}
// Stop car
void stop_car() {
digitalWrite(forward, LOW);
digitalWrite(reverse, LOW);
digitalWrite(turbo, LOW);
digitalWrite(right, LOW);
digitalWrite(left, LOW);
digitalWrite(reverse_lights, LOW);
}
// Read serial port and perform command
void performCommand() {
if (Serial.available()) {
val = Serial.read();
}
if (val == 'f') { // Forward
go_forward();
} else if (val == 'z') { // Stop Forward
stop_go_forward();
} else if (val == 'b') { // Backward
go_reverse();
} else if (val == 'y') { // Stop Backward
stop_go_reverse();
} else if (val == 'l') { // Right
go_right();
} else if (val == 'r') { // Left
go_left();
} else if (val == 'v') { // Stop Turn
stop_turn();
} else if (val == 's') { // Stop
stop_car();
}
void loop() {
performCommand();
}