#define BLYNK_PRINT Serial
#include <BlynkSimpleCurieBLE.h>
#include <CurieBLE.h>
char auth[] = "e38530b592094755b3fb8dfc57524c65"; //
AUTH wurde per E-Mail geschickt und hier eingegeben
int Ampel = 1;
const int ledGelb = 8 ; // Definierung der Variable <-> Int(integer) für
das gelbe LED
const int ledGruen = 13 ; // Definierung der Variable <->
Int(integer) für das grüne LED
const int ledRot = 7 ; // Definierung der
Variable <-> Int(integer) für das rote LED
const int buttonPin = 2; //
Definierung der Variable <-> Int(integer) für das Button (es wurde optional
definiert)
int SchalterZustand;
int buttonState = 0;
//const int
InputPin = 2;
BLEPeripheral blePeripheral;
void setup() { // einmalige
Definierung
Serial.begin(9600);
// pinMode(InputPin,INPUT); // schalter
INPUT
pinMode (ledGruen, OUTPUT); // LED Pins als OUTPUT definiert
pinMode
(ledGelb, OUTPUT);
pinMode (ledRot, OUTPUT);
delay(1000);
blePeripheral.setLocalName("Blynk");
blePeripheral.setDeviceName("Blynk");
blePeripheral.setAppearance(384);
Blynk.begin(blePeripheral, auth);
blePeripheral.begin();
Serial.println("Waiting for connections...");
}
/* buttonState = digitalRead(buttonPin);
if (buttonState == HIGH)
{
for(int y = 1; y<10 ; y++)
{
digitalWrite(7, LOW);
digitalWrite(8,
HIGH);
delay(500);
digitalWrite(8, LOW);
delay(500);
}
}
else
{digitalWrite(7, HIGH);
digitalWrite(8, LOW);
}*/
BLYNK_WRITE(V0) //
Alle 3 LEDs für 5 sekunden ausschalten by Button Widget on V0, set as switch or
button.
{
int val = param.asInt();
if (val == 1){
digitalWrite(7,
LOW);
digitalWrite(8, LOW);
digitalWrite(13, LOW);
delay(5000);}
//
This should show 1 or 0 in the IDE serial monitor as you toggle the button in
the App
}
// END Blynk Function
BLYNK_WRITE(V3) // Alle LEDs blinken
lassen by Button Widget on V0, set as switch or button.
{
int val =
param.asInt();
while (val == 1){
for (int s=0; s<10; s++){
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(13, LOW);
delay(100);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(13, HIGH);
delay(100);}
return;
}
}
// END Blynk
Function
BLYNK_WRITE(V1) // LED in Pin13 toggled by Button Widget on V0, set
as switch or button.
{
int val = param.asInt(); // Get Button Status
if
(val == 1) { // If button is ON
for (int i = 1; i<10000; i++) {
if (
param.asInt() == 0 ) return;
}
digitalWrite(8, HIGH);
digitalWrite(7,
LOW);
for (int i = 1; i<150000; i++) {
if ( param.asInt() == 0 ) return;
}
digitalWrite(13, HIGH);
digitalWrite(8, LOW);
for (int i = 1;
i<200000; i++) {
if ( param.asInt() == 0 ) return;
}
digitalWrite(13,
LOW);
digitalWrite(7, HIGH);
}
Serial.println(val); // This should show
1 or 0 in the IDE serial monitor as you toggle the button in the App
}
BLYNK_WRITE(V2) // LED in Pin8 toggled by Button Widget on V0, set as switch or
button.
{
int val = param.asInt(); // Get Button Status
while
(val == 1) {
// If button is ON
for(int x=0; x<7; x++){
digitalWrite(7, LOW);
digitalWrite(13, LOW);
digitalWrite(8, HIGH);
delay(500);
digitalWrite(8, LOW);
delay(500);}
return;
}
//return;
}
void loop(){ // sich wiederholende Schleife
digitalWrite(7,
HIGH);
blePeripheral.poll();
Blynk.run();
}
//BLYNK_WRITE(V0);
//int val = param.asInt();
//Serial.println(val);
/*SchalterZustand = digitalRead(ledRot); // Den Schalter überprfüfen
Serial.println(SchalterZustand,DEC); // Serielle Kommunikation mit Computer
if (digitalRead(ledRot)!=HIGH) // Bedingeunge falls Schalter gedrückt
wahr ist
{
digitalWrite(ledRot, HIGH); // Rote LED ist an
delay(5000); // 5 Sekunden lang
digitalWrite(ledGelb, HIGH); // Gelbe LED ist
an
delay(1000); // 1 Sekunde lang
digitalWrite(ledRot, LOW); // Rote LED
geht aus
digitalWrite(ledGelb, LOW); // Gelbe LED geht aus
digitalWrite(ledGruen, HIGH); // Grüne LED geht an
delay(5000); // 5 Sekunden
lang
digitalWrite(ledGruen, LOW); //Grüne LED geht aus
delay (20); //
wartet für 1 Sekunde
digitalWrite(ledRot,HIGH); //schaltet Rote LED an
delay(3000); //Signalbounce Umgehung
} else { // ansonsten Schalter nicht
geshcaltet
digitalWrite(ledRot,HIGH); // Rot leuchtet , die anderen nicht
digitalWrite(ledGruen,LOW);
digitalWrite(ledGelb,LOW) ;
}
*/