From f38af95beb7fe44b23b45e9c42ba02391367d2dd Mon Sep 17 00:00:00 2001 From: Olli Graf Date: Sat, 12 Aug 2023 10:16:01 +0200 Subject: [PATCH] =?UTF-8?q?Ampel=20f=C3=BCr=20Arduino=20Uno=20R3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- arduino-uno-r3/arduino-uno-r3.ino | 62 +++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 arduino-uno-r3/arduino-uno-r3.ino diff --git a/arduino-uno-r3/arduino-uno-r3.ino b/arduino-uno-r3/arduino-uno-r3.ino new file mode 100644 index 0000000..b7be447 --- /dev/null +++ b/arduino-uno-r3/arduino-uno-r3.ino @@ -0,0 +1,62 @@ +int ledRot = 10; +int ledGelb = 11; +int ledGruen = 12; +boolean blinkmode = false; +int phase = 1;// Ampelphase + +void setup() { + // put your setup code here, to run once: + pinMode(ledRot, OUTPUT); + pinMode(ledGelb, OUTPUT); + pinMode(ledGruen, OUTPUT); +} + +void loop() { + + // put your main code here, to run repeatedly: + if(blinkmode) { + // Blinkmodus + digitalWrite(ledRot, HIGH); + digitalWrite(ledGelb, HIGH); + digitalWrite(ledGruen, HIGH); + delay(1500); + digitalWrite(ledRot, LOW); + digitalWrite(ledGelb, LOW); + digitalWrite(ledGruen, LOW); + delay(200); + } + else { + // Ampelmodus + printf("Phase: %d", phase); + switch(phase) { + case 1: // Phase rot + digitalWrite(ledRot, HIGH); + digitalWrite(ledGelb, LOW); + digitalWrite(ledGruen, LOW); + delay(1500); + phase = 2; + break; + case 2: // Phase Rot/Gelb + digitalWrite(ledRot, HIGH); + digitalWrite(ledGelb, HIGH); + digitalWrite(ledGruen, LOW); + delay(1000); + phase = 3; + break; + case 3: // Phase GrĂ¼n + digitalWrite(ledRot, LOW); + digitalWrite(ledGelb, LOW); + digitalWrite(ledGruen, HIGH); + delay(2000); + phase = 4; + break; + case 4: // Phase Gelb + digitalWrite(ledRot, LOW); + digitalWrite(ledGelb, HIGH); + digitalWrite(ledGruen, LOW); + delay(1500); + phase = 1; + break; + } + } +}