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
int LEDblau = 9;
int LEDgruen = 10;
int LEDrot = 11;
int TASTER_ROT = 5; // Taste 1
int TASTER_GRUEN = 4; // Taste 2
int TASTER_BLAU = 7; // Taste 3
// die Farben
int rot = 0;
int gruen = 0;
int blau = 0;
void setup()
{
pinMode (LEDblau, OUTPUT);
pinMode(LEDgruen, OUTPUT);
pinMode(LEDrot, OUTPUT);
// INPUT_PULLUP -> Eingangspegel auf HIGH setzen
pinMode(TASTER_ROT, INPUT_PULLUP);
pinMode(TASTER_GRUEN, INPUT_PULLUP);
pinMode(TASTER_BLAU, INPUT_PULLUP);
}
void loop()
{
if (digitalRead(TASTER_ROT) == LOW)
{
rot ++;
// Wert darf 255 nicht übersteigen -> auf 0 setzen
if (rot > 255) rot = 0;
}
if (digitalRead(TASTER_GRUEN) == LOW)
{
gruen ++;
// Wert darf 255 nicht übersteigen-> auf 0 setzen
if (gruen > 255) gruen = 0;
}
if (digitalRead(TASTER_BLAU) == LOW)
{
blau ++;
// Wert darf 255 nicht übersteigen -> auf 0 setzen
if (blau > 255) blau = 0;
}
analogWrite(LEDrot, rot);
analogWrite(LEDgruen, gruen);
analogWrite(LEDblau, blau);
delay(20);
}
Letzte Aktualisierung: