
Betrug bei 5V WS2812-Steuerung zur Verwendung von 3,3V-Daten
Mar 06, 2023Der Plasma Stick 2040 W erweitert das Raspberry Pi Pico W-Board um einen RGB-LED-Streifen-Controller
Mar 08, 2023M5Stack Atom Echo Münze
Mar 10, 2023M5Stamp Pico ESP32
Mar 12, 2023Einzigartige Uhr dient gleichzeitig als Entwicklungsplatine
Mar 14, 2023Kontrollieren Sie sechs nicht
LEDs und insbesondere LED-Streifen sind eine der Top-Innovationen, die es Herstellern ermöglicht haben, eine breite Palette lustiger Leuchtobjekte zu schaffen. Diese gibt es in zwei Hauptvarianten: nicht adressierbare Farbstreifen, die ihre Farben insgesamt basierend auf (im Allgemeinen) drei PWM-Eingängen ändern; und adressierbare LED-Streifen, die eine viel detailliertere Steuerung ermöglichen, aber etwas teurer sind.
Keiner der Streifentypen wird wahrscheinlich Ihr Budget sprengen, aber wenn Sie einen dreifarbigen, nicht adressierbaren LED-Streifen mit einem ATmega328P-basierten Arduino – zum Beispiel einem Nano – verwenden möchten, müssen Sie drei davon zusammenbinden sechs PWM-Ausgangspins. Möchten Sie zwei Streifen steuern? Damit sind alle sechs Plätze besetzt, und wer mehr fahren will, hat meist kein Glück …
Oder vielleicht bist du es auch nicht. Wie im Video unten von YouTuber Trevor Makes zu sehen ist, ist es tatsächlich möglich, mit einem Arduino Nano bis zu 18 PWM-Ausgänge auszugeben, indem jeder digitale Pin (abzüglich der beiden für die serielle Steuerung verwendeten) in virtuelle PWM-Pins umgewandelt wird. Der Trick bei diesem cleveren Hack besteht darin, dass Trevors Code anstelle des normalen analogen Arduino-Schreibbefehls stattdessen die Interrupts verwendet, um kleine Codebits nacheinander auszulösen.
Das Pin-Timing ist nach dem Arbeitszyklus sortiert, und die Interrupt-Service-Routine (ISR) konfiguriert tatsächlich das nachfolgende Interrupt-Timing, während es ausgeführt wird. Auf diese Weise ist der Arduino in der Lage, eine praktisch unbegrenzte Anzahl von Software-PWM-Signalen zu erzeugen. 0 und 100 % Arbeitszyklus werden als Sonderfälle behandelt, da es sich zu diesem Zeitpunkt um einfache Binärausgänge handelt.
Was die Hardware angeht, verwendet Trevor ein Trio von ULN2003-Chips, um die aktuellen Anforderungen von jeweils zwei Streifen zu erfüllen, was seinen Beleuchtungsanforderungen elegant gerecht wird. Code und weitere Informationen zum Projekt finden Sie auf GitHub.

