// SENDER**************************************************************************************
#include <SoftwareSerial.h>
SoftwareSerial device(4,3);
void setup() {
//Begin der Seriellen Kommunikation mit 9600 baud
Serial.begin(9600);
device.begin(9600);
//senden von "Hallo Welt!" über die Serielle Schnittstelle
Serial.println("Hallo Welt!");
}
void loop() {
if (Serial.available() > 0) {
//lesen von Daten
device.println((char)Serial.read());
}
}
// EMPFÄNGER EASY WAY**************************************************************************
//globe Variable zum speichern von Daten welche empfangen werden
int data = 0;
void setup() {
//Begin der Seriellen Kommunikation mit 9600 baud
Serial.begin(9600);
}
void loop() {
//Wenn Daten zur Verfügung stehen dann...
if (Serial.available() > 0) {
//lesen von Daten
data = Serial.read();
//Die Daten werden in ASCII Zeichen (0..255) gesendet und empfangen,
//um diese Zeichen lesen zu können müssen diese Werte in Zeichen (Char) umgewandelt werden
Serial.print((char)data);
}
}
// EMPFÄNGER***********************************************************************************
//definieren der LEDs an den digitalen Pins des Arduinos
#define led_rot 13 //rote LED am digitalen Pin D13
#define led_gruen 8 //grüne LED am digitalen Pin D8
#define led_gelb 7 //gelbe LED am digitalen Pin D7
//Variablen um den Status der LED zu speichern
int ledRotStatus = 0;
int ledGruenStatus = 0;
int ledGelbStatus = 0;
//globe Variable zum speichern von Daten welche empfangen werden
int data = 0;
void setup() {
//Begin der Seriellen Kommunikation mit 9600 baud
Serial.begin(9600);
}
void loop() {
//Wenn Daten zur Verfügung stehen dann...
if (Serial.available() > 0) {
//lesen von Daten
data = Serial.read();
char zeichen = (char)data;
//Wenn ein "a" empfangen wurde, dann...
if(zeichen == 'a'){
ledRotStatus = ledRotStatus == 0 ? 1 : 0;
} else if(zeichen == 'b'){ //ansonsten wenn ein "b" empfangen wurde, dann
ledGruenStatus = ledGruenStatus == 0 ? 1 : 0;
} else if(zeichen == 'c'){ //ansonsten wenn ein "c" empfangen wurde, dann
ledGelbStatus = ledGelbStatus == 0 ? 1 : 0;
}
//Hier könnte ggf. noch ein else erfolgen um einen Ton auszugeben wenn ein Zeichen
//empfangen wurde welches nicht bekannt / mit einer Funktion definiert wurde.
}
//setzen der aktuellen Werte für die LEDs
digitalWrite(led_rot, ledRotStatus == 1? HIGH:LOW);
digitalWrite(led_gruen, ledGruenStatus == 1? HIGH:LOW );
digitalWrite(led_gelb, ledGelbStatus == 1? HIGH:LOW );
}