engine-software/comms/Arduino/MasterCode/MasterCode.ino
2022-08-07 14:39:16 -04:00

58 lines
1.4 KiB
C++

/* data is read as:
* s + (id) + (read1) + ! + (read2) + @ + (read3) + # + (read4) + e
* ex. sa1.00!0.00@0.00#-0.10e
*/
char incomingByte = ""; // for incoming serial data
String incomingBytes = "";
char incomingByte2 = ""; // for incoming serial data
String incomingBytes2 = "";
int readPls = 0;
void setup() {
Serial3.begin(115200);Serial2.begin(115200);Serial.begin(115200); // opens serial port, sets data rate to 9600 bps
}
void loop() {
// send data only when you receive data:
if (Serial3.available() > 0) {
// read the incoming byte:
incomingByte = Serial3.read();
// say what you got:
Serial3.println(incomingByte);
if(incomingByte == 's'){
readPls = 1;
}
if(incomingByte == 'e'){
readPls = 0;
incomingBytes.concat(incomingByte);
Serial.println(incomingBytes);
incomingBytes = "";
}
if(readPls == 1){
incomingBytes.concat(incomingByte);
}
}
if (Serial2.available() > 0) {
// read the incoming byte:
incomingByte2 = Serial2.read();
// say what you got:
Serial2.println(incomingByte2);
if(incomingByte2 == 's'){
readPls = 1;
}
if(incomingByte2 == 'e'){
readPls = 0;
incomingBytes2.concat(incomingByte2);
Serial.println(incomingBytes2);
incomingBytes2 = "";
}
if(readPls == 1){
incomingBytes2.concat(incomingByte2);
}
}
}