Inhaltsverzeichnis:

Eine LED ein- und ausblenden - Gunook
Eine LED ein- und ausblenden - Gunook

Video: Eine LED ein- und ausblenden - Gunook

Video: Eine LED ein- und ausblenden - Gunook
Video: Diese macOS Einstellungen solltest du SOFORT ändern (macOS Monterey)! | Nils-Hendrik Welk 2024, Juli
Anonim
Eine LED ein- und ausblenden
Eine LED ein- und ausblenden

Die folgenden Schritte sind Experimente, um zu veranschaulichen, wie LEDs funktionieren. Sie veranschaulichen, wie man eine LED gleichmäßig dimmt und ein- und ausblendet.

Du wirst brauchen:

  • Arduino (ich habe ein Duo verwendet)
  • Steckbrett
  • 5 mm rote LED
  • 330 Ω Widerstand (Nicht kritisch 330-560 Ω werden funktionieren.)
  • 22 Gauge festes Anschlusskabel

Die für diese Experimente benötigten Teile sind in allen Arduino-Startup-Kits enthalten.

Schritt 1: Pulsmodulation erklärt

Pulsmodulation erklärt
Pulsmodulation erklärt
Pulsmodulation erklärt
Pulsmodulation erklärt
Pulsmodulation erklärt
Pulsmodulation erklärt

LEDs laufen unabhängig von der Helligkeit immer mit der gleichen Spannung. Die Helligkeit wird durch einen Rechteckwellenoszillator bestimmt und die Zeitdauer, in der die Spannung hoch ist, bestimmt die Helligkeit. Dies wird Pulsweitenmodulation (PWM) genannt. Dies wird von der Arduino-Funktion analogWrite (pin, n) gesteuert, wobei n einen Wert von 0 bis 255 hat. AnalogWrite () gibt PWM aus, nicht echt analog. Bei n=2 leuchtet die LED doppelt so hell wie n=1. Die Helligkeit verdoppelt sich immer, wenn sich n verdoppelt. n=255 ist also doppelt so hell wie n=128.

Der Wert von n wird oft als Prozentsatz ausgedrückt, der als Tastverhältnis bezeichnet wird. Die Bilder zeigen Oszilloskopspuren für 25, 50 und 75% Tastverhältnis.

Schritt 2: Ungleichmäßiges Dimmen

Ungleichmäßiges Dimmen
Ungleichmäßiges Dimmen
Ungleichmäßiges Dimmen
Ungleichmäßiges Dimmen

Bauen Sie die Schaltung wie im Diagramm auf. Dies ist genau wie die Schaltung zum Blinken einer LED. Es verwendet Pin 9, da Sie einen PWM-fähigen Pin verwenden müssen.

Kopieren / fügen Sie die folgende Skizze in die Arduino IDE ein und führen Sie sie aus.

Sie werden feststellen, dass je heller die LED ist, desto langsamer dimmt sie. Wenn es sich dem dunkelsten nähert, wird es sehr schnell dunkler.

Void-Setup ()

{ PinMode (9, AUSGANG); aufrechtzuerhalten. Void Schleife () { Int Pin = 9; für (int i = 255; i > -1; i--) {analogWrite (pin, i); Verzögerung(10); } für (int i = 0; i < 256; i ++) { analogWrite (pin, i); Verzögerung(10); } }

}

Der nächste Schritt zeigt, wie Sie die LED mit konstanter Rate und in einem für die Anweisung dimmen.

Schritt 3: Auf und ab in einem For()

Damit die LED mit einer konstanten Rate dimmt, muss die Verzögerung () mit einer exponentiellen Rate ansteigen, da das halbe Tastverhältnis immer die halbe Helligkeit erzeugt. Mein erster Gedanke war, zu versuchen, die Funktion map() zu verwenden, aber sie ist linear.

Die Linie:

int d = (16-i/16)^2;

berechnet das inverse Quadrat der Helligkeit, um die Länge der Verzögerung zu bestimmen.

Kopieren / fügen Sie die folgende Skizze in die Arduino IDE ein und Sie werden sehen, dass die LED mit konstanter Geschwindigkeit ein- und ausblendet.

Void-Setup ()

{ PinMode (9, AUSGANG); aufrechtzuerhalten. Void Schleife () { Int x = 1; int-Pin = 9; für (int i = 0; i > -1; i = i + x) {int d = (16-i/16)^2; analogWrite (Pin, i); Verzögerung(d); wenn (i == 255) x = -1; // Richtung in der Spitze wechseln } }

Empfohlen: