Aktion 23 Wniki

aphilosophisch, apolitisch, areligiös, akünstlerisch, asexuell

Benutzer-Werkzeuge

Webseiten-Werkzeuge


diskordianische-praksis:technomagie:arduino-stimmungslicht

Dies ist eine alte Version des Dokuments!


Arduino-"Stimmungslicht"

Ist nur 'ne simple Bastelei. ^^

Der „rote“, „grüne“ und „blaue“ Taster werden benutzt, um die entsprechende Farbkomponente zu wählen, die beiden Taster dazwischen („minus“ und „plus“) vermindern bzw. erhöhen die Leuchtkraft der gewählten Farbkomponente. Der letzte Taster („weiß“) setzt alle Farbkomponenten auf 50% Leuchtkraft zurück.

stimmungslicht.ino
// Define Pins
#define BlueLED 3
#define GreenLED 5
#define RedLED 6
#define RedButton 8
#define GreenButton 9
#define BlueButton 10
#define MinusButton 11
#define PlusButton 12
#define WhiteButton 13
 
int RGBLEDValue[7]={0, 0, 0, 128, 0, 128, 128};
int RGBLEDMode=RedLED;
 
void setup() {
  // put your setup code here, to run once:
  pinMode(RedLED, OUTPUT);
  pinMode(GreenLED, OUTPUT);
  pinMode(BlueLED, OUTPUT);
  pinMode(RedButton, INPUT_PULLUP);
  pinMode(GreenButton, INPUT_PULLUP);
  pinMode(BlueButton, INPUT_PULLUP);
  pinMode(MinusButton, INPUT_PULLUP);
  pinMode(PlusButton, INPUT_PULLUP);
  pinMode(WhiteButton, INPUT_PULLUP);
 
  analogWrite(RedLED, RGBLEDValue[RedLED]);
  analogWrite(GreenLED, RGBLEDValue[GreenLED]);
  analogWrite(BlueLED, RGBLEDValue[BlueLED]);
 
  Serial.begin(9600);
}
 
 
 
void loop() {
  // put your main code here, to run repeatedly:
 
  #define delayTime 0
 
    if (digitalRead(RedButton) == LOW)
  {
    RGBLEDMode = RedLED;
    Serial.println("RED selected: " + String(RGBLEDValue[RedLED]));
  }
    else if (digitalRead(GreenButton) == LOW)
  {
    RGBLEDMode = GreenLED;
    Serial.println("GREEN selected: " + String(RGBLEDValue[GreenLED]));
  }
    else if (digitalRead(BlueButton) == LOW)
  {
    RGBLEDMode = BlueLED;
    Serial.println("BLUE selected: " + String(RGBLEDValue[BlueLED]));
  }
    else if (digitalRead(MinusButton) == LOW)
  {
    Serial.println("Minus: " + String(RGBLEDValue[RGBLEDMode]));
    Serial.println("R: " + String(RGBLEDValue[RedLED]) + " G: " + String(RGBLEDValue[GreenLED]) + " B: " + String(RGBLEDValue[BlueLED]));
    RGBLEDValue[RGBLEDMode] -= 1;
    if (RGBLEDValue[RGBLEDMode] < 0) {
      RGBLEDValue[RGBLEDMode] = 0;
      }
     //delay(100);
  }
    else if (digitalRead(PlusButton) == LOW)
  {
    Serial.println("Plus: " + String(RGBLEDValue[RGBLEDMode]));
    Serial.println("R: " + String(RGBLEDValue[RedLED]) + " G: " + String(RGBLEDValue[GreenLED]) + " B: " + String(RGBLEDValue[BlueLED]));
    RGBLEDValue[RGBLEDMode] += 1;
    if (RGBLEDValue[RGBLEDMode] > 255) {
      RGBLEDValue[RGBLEDMode] = 255;
      }
     //delay(100);
  }
      else if (digitalRead(WhiteButton) == LOW)
  {
    Serial.println("RESET");
    RGBLEDValue[RedLED] = 128;
    RGBLEDValue[GreenLED] = 128;
    RGBLEDValue[BlueLED] = 128;
  }
  analogWrite(RedLED, RGBLEDValue[RedLED]);
  analogWrite(GreenLED, RGBLEDValue[GreenLED]);
  analogWrite(BlueLED, RGBLEDValue[BlueLED]);
}
diskordianische-praksis/technomagie/arduino-stimmungslicht.1564146547.txt.gz · Zuletzt geändert: 2019/07/26 15:09 von Bwana Honolulu