Dagu rover 5 - arduino mega 2560 - Xbee (10 / 11 steg)
Steg 10: Slutligt bearbetas kod
Här är bearbetning koden används för att köra xbee. Jag har randig det tillbaka till grunderna. pil för riktning och ctrl för stopp. Jag har inkluderat data i kanal att få kodare. vissa gånger kraschar när den får bara 1 kodare, jag vet inte varför. Kod skriven i 2.1.1
import processing.serial.*;
Seriella myPort; Skapa objekt från seriella klass
int lf = 10; Radmatning i ASCII
int source1;
int source2;
String myString = null;
void setup() {
storlek (640, 360);
println(Serial.list());
Sträng portName = Serial.list() [5]. Välj porten ansluten
myPort = ny följetong (här, portName, 9600);
myPort.clear();
myString = myPort.readStringUntil(lf);
myString = null;
source1 = 0;
source2 = 0;
}
void draw() {
Background(255,255,255);
textSize(32);
text(source1,20,60);
text(source2,20,120);
Fill(0,0,0);
samtidigt (myPort.available() > 0) {
myString = myPort.readStringUntil(lf);
om (myString! = null) {
println(myString);
String [] q = splitTokens (myString, ","), //split på ","
println (q.length + "värdena"); Skriver ut 2 hittade"
source1 = int(q[0]);
source2 = int(q[1]);
}
}
}
void keyPressed() {
om (nyckel == CODED) {
om (keyCode == upp) {
myPort.write (10), //Forward
} else om (keyCode == ner) {
myPort.write (12), //Backward
} annat if(keyCode == LEFT) {
myPort.write (13); //LEFT
} annat if(keyCode == RIGHT) {
myPort.write (11), //Right
} annat if(keyCode == CONTROL) {
myPort.write(14); Paus
}
}
}