int count = 0;
float pi = 3.141;
byte dataByte;
byte bytes[5];
void setup() {
Serial.begin(9600); //Initialisierung mit Baudrate 9600 bd, Format 8 Datenbits, 1 Stoppbit, keine Parität
Serial.println(); //(Zeichen für) Leerzeile senden
Serial.println();
Serial.println();
Serial.println("Serial-Beispiel"); //Text mit Zeilenumbruch senden
Serial.println("+++++++++++++++++++");
Serial.print("Pi: ");
Serial.println(pi, 2); //float mit 2 Nachkommastellen und Zeilenumbruch ausgeben
Serial.println("Sende ein Byte (= ASCII-Zeichen)!");
}
void loop() {
if (Serial.available()) //Fragen ob Byte empfangen wurde
{
Serial.println("+++++++++++++++++++");
Serial.print("Durchlauf: ");
count++;
Serial.println(count);
Serial.print("Empfangenes Byte: ");
dataByte = Serial.read(); // 1 Byte lesen
Serial.write(dataByte);
Serial.println();
Serial.println("Senden Sie EINZELN 5 Bytes!");
while (Serial.available() < 5) //Warten solange weniger als 5 Byte empfangen wurden
continue;
for (int i = 0; i < 5; i++) {
Serial.print("Empfangenes Byte ");
Serial.print(i);
Serial.print(": ");
dataByte = Serial.read();
Serial.write(dataByte); //Ein Byte senden
Serial.println();
}
Serial.println("Senden Sie 5 Bytes ZUSAMMEN!");
while (Serial.available() == 0)
continue;
Serial.readBytes(bytes, 5); //Warten bis 5 bytes empfangen wurden, Abbruch nach spätestens 1s
Serial.write(bytes, 5);
Serial.println();
Serial.println("Sende ein Byte (= ASCII-Zeichen)!");
}
}