Add comments
This commit is contained in:
parent
942158a6ff
commit
4700e004d0
126
LED_Kueche/LED_Kueche.ino
Normal file
126
LED_Kueche/LED_Kueche.ino
Normal file
@ -0,0 +1,126 @@
|
||||
|
||||
#include <Adafruit_NeoPixel.h>
|
||||
|
||||
#define PIN_ONOFF 2
|
||||
#define PIN_FUNCTION1 3
|
||||
#define PIN_FUNCTION2 4
|
||||
#define PIN_LEDS 5
|
||||
#define NUM_LEDS 124
|
||||
|
||||
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PIN_LEDS, NEO_GRB + NEO_KHZ800);
|
||||
|
||||
bool boolOnOff;
|
||||
int intColour;
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600);
|
||||
boolOnOff = 1;
|
||||
intColour = 0;
|
||||
strip.begin();
|
||||
strip.show(); // Initialize all pixels to 'off'
|
||||
Serial.println("My Sketch has started");
|
||||
}
|
||||
|
||||
|
||||
|
||||
void loop() {
|
||||
|
||||
if (onOff(PIN_ONOFF,boolOnOff)) {
|
||||
setColour(PIN_FUNCTION1,intColour);
|
||||
Serial.println("ON");
|
||||
}
|
||||
else {
|
||||
Serial.println("OFF");
|
||||
setAll(0x00,0x00,0x00);
|
||||
}
|
||||
showStrip();
|
||||
}
|
||||
|
||||
|
||||
// Neopixel senden an Streifen
|
||||
|
||||
void showStrip() {
|
||||
#ifdef ADAFRUIT_NEOPIXEL_H
|
||||
// NeoPixel
|
||||
strip.show();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
// Neopixel setze einzelnen Pixel
|
||||
|
||||
void setPixel(int Pixel, byte red, byte green, byte blue) {
|
||||
#ifdef ADAFRUIT_NEOPIXEL_H
|
||||
// NeoPixel
|
||||
strip.setPixelColor(Pixel, strip.Color(red, green, blue));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
// Neopixel setze ganzen Streifen
|
||||
|
||||
void setAll(byte red, byte green, byte blue) {
|
||||
for(int i = 6; i < NUM_LEDS; i++ ) {
|
||||
setPixel(i, red, green, blue);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Entstörung des Schaltsignal des Tasters durch Delay | Anmerkung an mich ggf. nur die abfallende Flanke abfragen? und/oder mit Flankenmerker statt Schleife arbeiten
|
||||
|
||||
bool pressedKey (int keyIn) {
|
||||
if (digitalRead(keyIn) == 1) {
|
||||
delay(500);
|
||||
if (digitalRead(keyIn) == 1) {
|
||||
while (digitalRead(keyIn) == 1) {
|
||||
delay(500);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Schaltet den LED-Streifen Ein und/oder Aus
|
||||
|
||||
bool onOff(int pinOnOff, bool varOnOff) {
|
||||
if (pressedKey(pinOnOff)) {
|
||||
Serial.print("Pressed");
|
||||
Serial.println(pinOnOff);
|
||||
varOnOff = !varOnOff;
|
||||
}
|
||||
return varOnOff;
|
||||
}
|
||||
|
||||
|
||||
//Setzt die Farbe des LED-Streifens
|
||||
|
||||
void setColour(int pinSetColour, int varColour) {
|
||||
if (pressedKey(pinSetColour)) {
|
||||
if (varColour < 3) {
|
||||
varColour++;
|
||||
}
|
||||
else {
|
||||
varColour = 0;
|
||||
}
|
||||
}
|
||||
switch (varColour) {
|
||||
case 0: setAll(0xff,0xff,0xff);
|
||||
break;
|
||||
case 1: setAll(0xff,0x00,0x00);
|
||||
break;
|
||||
case 2: setAll(0x00,0xff,0x00);
|
||||
break;
|
||||
case 3: setAll(0x00,0x00,0xff);
|
||||
break;
|
||||
default:setAll(0x00,0x00,0x00);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user