Arduino Android Bluetooth bil (4 / 5 steg)
Steg 4: Ardunio kod
För felsökning bör du använda Arduino Serial Monitor för att se Serial.println("") meddelanden som skickas från ardunio medan den är ansluten till datorn via USB.
#include SoftwareSerial
mySerial (10, 11); RX, TX
int ledde = 13.
char myChar = "a";
Sträng sträng;
char LorR;
int enA = 3;
int in1 = 4;
int in2 = 5;
int enB = 6;
int in3 = 7.
int in4 = 8.
void setup()
{
Öppna seriell kommunikation och vänta på port att öppna:
Serial.BEGIN(57600);
pinMode ledde (, OUTPUT);
Serial.println ("Goodnight moon!");
ställa in datahastigheten för SoftwareSerial port
mySerial.begin(9600);
mySerial.println ("Hello, world?);
pinMode (enA, produktionen);
pinMode (in1, produktionen);
pinMode (in2, produktionen);
pinMode (enB, produktionen);
pinMode (in3, produktionen);
pinMode (in4, produktionen);
}
void loop() / / kör om och om igen
{
string = "";
Lägg till sträng
While(true) {
myChar=mySerial.read();
om (32 < = myChar & & myChar < = 127) {
sträng += myChar;
}
om (myChar == ":'){
bryta;
}
Delay(10);
} / / Medan slutet
Analysera sträng
om (sträng! = "off:" & & sträng! = "på :"){
om (sträng! = "L0:" & & sträng! = "R0:") {
kod för att ange motor åt vänster eller höger
om (string[0]=='L') {
LorR = 'L';
} annat {
LorR = "R";
}
string.Remove (0, 1);
koden för att sätta det i omvänd
om (string[0]=='-') {
string.Remove (0, 1);
string.Remove((String.length()-1), 1);
Serial.println(string);
om (LorR == "L") {
digitalWrite (in1, hög);
digitalWrite (in2, låg);
analogWrite (enA, string.toInt());
} annat {
digitalWrite (in3, låg);
digitalWrite (in4, hög);
analogWrite (enB, string.toInt());
}
} annat {
string.Remove((String.length()-1), 1);
Serial.println(string);
om (LorR == "L") {
digitalWrite (in1, låg);
digitalWrite (in2, hög);
analogWrite (enA, string.toInt());
} annat {
digitalWrite (in3, hög);
digitalWrite (in4, låg);
analogWrite (enB, string.toInt());
}
}
} annat {
digitalWrite (in1, låg);
digitalWrite (in2, låg);
digitalWrite (in3, låg);
digitalWrite (in4, låg);
}
} //End av långa om uttalande
om (sträng == "på :"){
digitalWrite (ledde, högt);
}
om (sträng == "av :"){
digitalWrite (ledde, låg);
}
} //Loop slut