Inhaltsverzeichnis:

RGB-Hintergrundbeleuchtung + Audio Visualizer - Gunook
RGB-Hintergrundbeleuchtung + Audio Visualizer - Gunook

Video: RGB-Hintergrundbeleuchtung + Audio Visualizer - Gunook

Video: RGB-Hintergrundbeleuchtung + Audio Visualizer - Gunook
Video: Led Sync to Music 2024, November
Anonim
RGB-Hintergrundbeleuchtung + Audio Visualizer
RGB-Hintergrundbeleuchtung + Audio Visualizer
RGB-Hintergrundbeleuchtung + Audio Visualizer
RGB-Hintergrundbeleuchtung + Audio Visualizer

Willkommen zu meinen Instructables zum Bau einer RGB-LED-Hintergrundbeleuchtung für z. auf der Rückseite Ihres Fernsehers oder Schreibtischs.

Der Schaltplan selbst ist sehr einfach, da die WS2812 LED-Streifen sehr einfach mit beispielsweise einem Arduino Nano verbunden werden können.

Hinweis: dass Sie die zusätzliche MSGEQ7 Audio Analyzer-Schaltung nicht verwenden müssen, wenn Sie nur die LED-Hintergrundbeleuchtung ohne Audiovisualisierung wünschen.

Ich habe eine detaillierte Liste der gebrauchten Teile bereitgestellt und wo Sie sie kaufen können:

  • Arduino Nano/Uno (Amazon / AliExpress)
  • WS2812 RGB LED Strip (Amazon/ AliExpress), beachten Sie, dass IP für den Schutz steht (z.
  • 5V Netzteil (Amazon) (hängt davon ab, wie viele LED-Streifen hat) -> jede LED braucht ~ 20mA, der in dieser Anleitung verwendete Streifen hat 45 LEDs (30 pro Meter), also brauche ich 45 * 20 mA ~ 1, 5 Ampere Versorgung (Arduino, MSGEQ7 braucht auch welche), habe ich ein Netzteil angeschlossen, das 3A liefert, was für uns jetzt definitiv ausreicht
  • 3,5 mm Audiobuchse (Amazon / AliExpress)
  • Potentiometer 10kOhm (Amazon / AliExpress)
  • Drucktaste (Amazon / AliExpress)
  • Widerstand (1x 10kOhm, 1x 220Ohm, für MSGEQ7: 2x100kOhm)
  • Kondensatoren (1x 1000yF Elektrolyt (Amazon / AliExpress), 2x 10nF, für MSGEQ7: 2x 0,1yF, 1x33pF (Amazon / AliExpress)
  • Einfache Diode (Amazon / AliExpress)
  • DC-Buchse (Amazon / AliExpress)

Schritt 1: Erstellen Sie den Schaltplan

Baue den Schaltplan
Baue den Schaltplan
Baue den Schaltplan
Baue den Schaltplan
Baue den Schaltplan
Baue den Schaltplan

Hauptschema:

Die Verbindung des WS2812-Streifens mit einem Arduino ist mit der Adafruit_NeoPixel-Bibliothek ziemlich einfach.

Der LED-Streifen hat 3 Pins: VCC, DATA, GND. VCC ist mit 5V verbunden, GND mit Masse und der DATA Pin in der Mitte ist mit LED_DATA Pin D6 auf dem Arduino verbunden. Jetzt hat jede LED auf dem Streifen einen WS2812-Chip, der die vom Arduino empfangenen Daten aufnimmt und an die nächste LED weitergibt, daher müssen wir die LED-Daten nur einmal an die erste LED auf dem Streifen speisen.

Die Logik des Druckknopfs zum Ändern der Modi und des Potentiometers zum Steuern der Helligkeit wird im nächsten Schritt erklärt.

Den genauen Schaltplan finden Sie im Screenshot der Fritzing-Datei, der auch zum Download bereitsteht.

Beachten Sie, dass es sehr wichtig ist, den Arduino 5V-Pin nur über die Diode mit der Stromversorgung zu verbinden, damit der Arduino nicht beschädigt wird, wenn wir das USB-Kabel zum Programmieren einstecken. Die 10nF und 1000uF sind auch aus Sicherheitsgründen, damit es nicht zu Stromengpässen kommt.

Für die MSGEQ7-Schaltung:

Dies ist die gebräuchlichste Schaltung, um einen MSGEQ7 mit einem Arduino zu verbinden. Hier benötigen Sie auch die 3,5-mm-Audiobuchse. Der mittlere Pin der meisten Audiobuchsen ist GND, die Pins links / rechts sind die Stereokanäle, die über einen 10nF-Kondensator mit dem Signal In Pin des MSGEQ7 verbunden sind, wie im Schaltplan gezeigt. Sie können dem Signal In Pin zusätzlich ein Potentiometer hinzufügen, um die Empfindlichkeit des Audiosignals zu steuern, aber das ist wirklich nicht notwendig. Der MSGEQ7 ist mit dem Arduino verbunden, wobei der Analog Out-Pin mit A1 (MSGEQ_OUT), Strobe-Pin mit D2 (STROBE), Reset-Pin mit D5 (RESET) verbunden ist.

Schritt 2: Der Code

Der Code
Der Code
Der Code
Der Code
Der Code
Der Code

GitHub-Link zum vollständigen Sketch:PhilKes/RGB_Audio_Backlight

Hinweise zum Code:

Im Code deklarieren wir das WS2812 Strip-Objekt mit einem neuen Adafruit_NeoPixel-Objekt, übergeben die Anzahl der LEDs (ändern Sie NUM_LEDS für Ihr Setup), den Arduino-Pin, der mit dem LED_DATA-Pin verbunden ist, und die Codierungsart + Geschwindigkeit der Farbwertübertragung.

Sobald dies erledigt ist, setzen wir die Standardhelligkeit in setup() über setBrightness(0-255) und schalten den Strip mit begin() ein. Wir können nun jedes einzelne Pixel/LED mit setPixel(LED, Color) auf eine bestimmte RGB-Farbe einstellen. Wenn wir alle LEDs auf neue Werte gesetzt haben, aktualisieren wir den Streifen mit strip.show(). Das ist im Grunde die gesamte Codelogik, die wir brauchen, um jede gewünschte Animation zu programmieren. Um nun die Animationen / Modi tatsächlich zu steuern, fügen wir dem Arduino einen Druckknopf / einen taktilen Schalter hinzu. Dazu verbinden wir ein Ende des Buttons mit VCC und das andere mit Arduino Pin D3 und mit einem 10kOhm Widerstand mit GND. An diesen Pin hängen wir im setup() einen Interrupt an, der bei jedem Tastendruck einen Aufruf der Methode changeMode() auslöst. In changeMode() schalten wir einfach in den nächsten Modus um und teilen der aktuellen Animation mit, dass sie unterbrochen werden soll. Sobald dies geschieht, wird loop() neu ausgeführt und spielt die neue Animation/den neuen Modus ab.

Die bereitgestellten Animationen umfassen: Regenbogenfarben verblassen, Rot, Grün, Blau, Weiß, Musikanalysatormodus

Zusätzlich habe ich ein 10kOhm Potentiometer hinzugefügt, um die Helligkeit des Strips zu steuern. die Methode checkBrightness() überprüft den Ausgang des Potentiometers, das an Pin A2 (mittlerer Pin des Potentiometers) angeschlossen ist und aktualisiert die Helligkeit des Strips entsprechend.

Für den musicAnalyzer()-Modus über MSGEQ7:

Dieser Modus visualisiert das an Signal In des MSGEQ7 angeschlossene Audiosignal. Der MSGEQ gibt ein analoges Signal aus, das ein einzelnes Audioband zeigt (8 Bänder, von niedrigen bis hohen Frequenzen). Die Methode musicAnalyzer() ruft die aktuellen Werte der Audiobänder ab, indem sie den MSGEQ zurücksetzt und dann die bereitgestellten Analogwerte zwischenspeichert. Das ausgegebene Band kann durch Anlegen einer hohen Flanke am Strobe Pin geändert werden. Nachdem alle 8 Bänder gepuffert wurden, verschiebt die Methode alle LED-Pixelwerte zurück und berechnet den neuen Wert für LED 0. Die Farbe besteht aus: Niederfrequenz (Bass) Rot, Mittelfrequenz Grün und Hochfrequenz Blau. Das Verschieben des Werts vor dem Laden des neuen Werts gibt uns eine schöne, zeitlich reibungslose Animation.

Schritt 3: Audio auf dem PC einrichten

Image
Image

Um Ihre Musik/Audio in den MSGEQ7 einzuspeisen, aber Ihre Musik trotzdem auf Ihren Lautsprechern abspielen zu lassen, müssen Sie entweder die RealtekHD Stereomix-Funktion verwenden oder den MSGEQ-Audioeingang z. B. Rücklautsprecherausgang Ihrer Soundkarte/Motherboard.

Um den Stereomix in Win10 zu aktivieren, klicken Sie mit der rechten Maustaste auf das Lautsprechersymbol unten rechts und klicken Sie auf "Sounds", hier können Sie Stereomix im Reiter "Aufnahme" aktivieren (Rechtsklick -> aktivieren). Wenn der Stereomix nicht sichtbar ist, klicken Sie mit der rechten Maustaste und wählen Sie "Deaktivierte Geräte anzeigen". Öffnen Sie nun die Einstellungen für den Stereomix und weisen Sie ihn an, den Ton Ihrer Hauptlautsprecher zu hören und zu kopieren.

Wenn Sie den hinteren Lautsprecherausgang verwenden möchten, öffnen Sie die Einstellungen Ihres Hauptlautsprechers im Menü "Sounds", Tab "Verbesserungen" und wählen Sie dann "Umgebung" aus der Liste und wählen Sie "Raum" im Dropdown-Menü unten.

Dies ermöglicht nun die parallele Audioausgabe Ihrer Lautsprecher und des MSGEQ7.

Schritt 4: Notizen

Da der Schaltplan weder kompliziert noch groß ist, habe ich es geschafft, die gesamte Schaltung in eine kleine Schachtel mit Löchern für den USB-Anschluss, die Audiobuchse, die DC-Buchse, das Potentiometer und den Druckknopf zu stecken. Sie können einfach Stiftleisten (männlich/weiblich) verwenden und die 3 Kabel über Jumperkabel mit dem WS2812-Streifen verbinden.

Empfohlen: