Inhaltsverzeichnis
RGB-LED automatisch dimmen
Arduino
// 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 Taster 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: