Hallo RN,
ich will von einen Arduino A zum anderen Arduino 4 Messwerte übergeben.
Diese kommen so beim Arduino B an: "000,111,222,333". Anzahl der Zeichen zwischen 0 und 3. Aber jeder Messwert ist mit einem Komma getrennt.
Ich will diese nacher möglichst so auswerten können:
Sensor[0] = 000
Sensor[1] = 111
Sensor[2] = 222
Sensor[3] = 333
Bis jetzt hab ich nicht viel mehr geschafft außer das Komma zu finden^^
Code:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11);
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
}
void loop() {
if(mySerial.available()) {
char c = mySerial.read();
if(c==',' ) {
Serial.println("komma gefunden");
}
}
}
Kann mir jemand auf die Sprünge helfen
Hier geht's... aber ist schmuddelig^^
Code:
unsigned long data;
char buffer[40];
int index = 0;
int counter = 0;
int Sensor[4];
void loop() {
//wenn serielle Daten vorhanden, dann einlesen
if(mySerial.available()) {
//einzelnes Zeichen lesen
char c = mySerial.read();
if(c==',' ) {
buffer[index] = 0;
counter++;
index=0;
data = atol(buffer);
Sensor[counter]=data;
if(counter == 4){counter=0;}
} else {
buffer[index++] = c;
}
}
Serial.println(Sensor[1]);
Serial.println(Sensor[2]);
Serial.println(Sensor[3]);
Serial.println(Sensor[4]);
Serial.println();
}
Lesezeichen