Leucht­stär­ke von LEDs mit der Puls­wei­ten­mo­du­la­ti­on und Poten­tio­me­ter regeln

Lese­zeit: 3 Minu­ten
Navi­ga­ti­on

Ein ➨ana­lo­ges Signal kann von 0% bis 100% regu­liert wer­den.
Digi­ta­le Signa­le ken­nen aber nur zwei Zustän­de: an (HIGH) oder aus (LOW).
Bei der Puls­wei­ten­mo­du­la­ti­on (PWM) wird das digi­ta­le Signal in bestimm­ten Abstän­den immer wie­der ein- und aus­ge­schal­tet, um ähn­li­che Ergeb­nis­se wie die eines nor­ma­len ana­lo­gen Signals zu erhal­ten. Der Ein-Aus-Wechsel simu­liert die Span­nung zwi­schen 0 und 5 Volt. Der Dau­er des Ein-Zustandes ist die Puls­wei­te.


Bild­quel­le: ➨https://​www​.ardui​no​.cc/​e​n​/​T​u​t​o​r​i​a​l​/​PWM (deut­sche Über­set­zung)

Nur die digi­ta­len Pins, die mit einem ~ gekenn­zeich­net sind, kön­nen mit der PWM ange­spro­chen wer­den.

Benö­tig­te Bau­tei­le:

  • LED
  • Wider­stand > 100 Ω
  • Poten­tio­me­ter
  • Lei­tungs­dräh­te

Baue die Schal­tung auf.
(Fah­re mit der Maus über das Bild, um die Bezeich­nun­gen der Bau­tei­le zu sehen)

Die Dre­hung des Poten­tio­me­ters soll die LED hel­ler und dunk­ler regeln.

Defi­nie­re die Varia­blen und erstel­le den setup-Teil.

int ReglerWert;
int REGLER = A0;
int LED = 6;

void setup()
{
  pinMode(LED, OUTPUT);
}

Die LED darf mit ➨ana­log­Wri­te höchs­ten mit dem Wert 255 ange­steu­ert wer­den, der Poten­tio­me­ter kennt aber Wer­te zwi­schen 0 (= 0 Volt) und 1023 (= 5 Volt).

Des­halb muss der gele­se­ne Reg­ler­wert durch 4 geteilt wer­den.

void loop()
{
  ReglerWert = analogRead(REGLER);
  analogWrite(LED, ReglerWert / 4);
}

Alter­na­tiv kannst du auch den ➨map-Befehl ver­wen­den:

void loop()
{ 
  ReglerWert = analogRead(REGLER); 
  analogWrite (LED, map(ReglerWert, 0, 1023, 0, 255));
}


Ver­wand­te Auf­ga­ben:


Letzte Aktualisierung: 30. Jul 2020 @ 9:30