Far­ben­spie­le RGB-LED

RGB-LED auto­ma­tisch dimmen

Ardui­no

// Farbe rot an Pin 11
int LEDrot = 11;

// Farbe grün an Pin 10
int LEDgruen = 10;

// Farbe blau an Pin 9
int LEDblau = 9;

void setup() 
{   
  pinMode(LEDrot, OUTPUT);
  pinMode(LEDgruen, OUTPUT); 
  pinMode(LEDblau, OUTPUT); 
} 

void loop() 
{ 
  analogWrite(LEDrot, 255); 
  delay(1000); 
  analogWrite(LEDrot, 0); 
  analogWrite(LEDgruen, 255);
  delay(1000); 
  analogWrite(LEDgruen, 0);  
  analogWrite(LEDblau, 255); 
  delay(1000); 
  analogWrite(LEDblau, 0); 
}

Wemos D1 Mini

int LEDrot = D1; 
int LEDgruen = D2;
int LEDblau = D3;  

void setup() 
{ 
  pinMode (LEDblau, OUTPUT);
  pinMode(LEDgruen, OUTPUT); 
  pinMode(LEDrot, OUTPUT); 
}

void loop()
{
  // rot heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDrot, i);  
    delay(200);   
  }
  
  // rot dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDrot, i);  
    delay(200);   
  }

  // grün heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDgruen, i);  
    delay(200);   
  }
  
  // grün dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDgruen, i);  
    delay(200);   
  }

   // blau heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDblau, i);  
    delay(200);   
  }
  
  // blau dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDblau, i);  
    delay(200);   
  }
}

ESP32-Wroom

int LEDrot = 19; 
int LEDgruen = 18;
int LEDblau = 5;  

void setup() 
{ 
  pinMode (LEDblau, OUTPUT);
  pinMode(LEDgruen, OUTPUT); 
  pinMode(LEDrot, OUTPUT); 
}

void loop()
{
  // rot heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDrot, i);  
    delay(200);   
  }
  
  // rot dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDrot, i);  
    delay(200);   
  }

  // grün heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDgruen, i);  
    delay(200);   
  }
  
  // grün dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDgruen, i);  
    delay(200);   
  }

   // blau heller
  for (int i = 0; i < 250; i += 10)  
  { 
    analogWrite(LEDblau, i);  
    delay(200);   
  }
  
  // blau dunkler
  for (int i = 250; i > 0; i -= 10)  
  { 
    analogWrite(LEDblau, i);  
    delay(200);   
  }
}

Mit Tas­ter dimmen

/*
  Anschlüsse am Tastenfeld von links nach rechts
  GND D4 D5 D6 D7
*/
int TASTER_EINS = 5;  // Taste 1 
int TASTER_ZWEI = 4;  // Taste 2 
int TASTER_DREI = 7;  // Taste 3 
int TASTER_VIER = 6;  // Taste 4 

void setup() 
{ 
  Serial.begin(9600);    

  // INPUT_PULLUP -> Eingangspegel auf HIGH setzen 
  pinMode(TASTER_EINS, INPUT_PULLUP); 
  pinMode(TASTER_ZWEI, INPUT_PULLUP); 
  pinMode(TASTER_DREI, INPUT_PULLUP); 
  pinMode(TASTER_VIER, INPUT_PULLUP); 
} 

void loop() 
{ 
  if (digitalRead(TASTER_EINS) == LOW) 
  {   
    delay(100); 
    Serial.println("Taste 1 an Pin " + String(TASTER_EINS));        
  } 

  if (digitalRead(TASTER_ZWEI) == LOW)   
  {  
    delay(100);   
    Serial.println("Taste 2 an Pin " + String(TASTER_ZWEI));     
  } 
 
  if (digitalRead(TASTER_DREI) == LOW)  
  {  
    delay(100); 
    Serial.println("Taste 3 an Pin " + String(TASTER_DREI));    
  } 

  if (digitalRead(TASTER_VIER) == LOW)   
  {  
    delay(100);  
    Serial.println("Taste 4 an Pin " + String(TASTER_VIER));    
  } 
}

Letzte Aktualisierung: Apr. 20, 2025 @ 20:33