Inhaltsverzeichnis:

Sound reaktiver billiger IR-LED-Streifen - Gunook
Sound reaktiver billiger IR-LED-Streifen - Gunook

Video: Sound reaktiver billiger IR-LED-Streifen - Gunook

Video: Sound reaktiver billiger IR-LED-Streifen - Gunook
Video: Торий 2024, November
Anonim
Sound Reaktiver billiger IR-LED-Streifen
Sound Reaktiver billiger IR-LED-Streifen
Sound reaktiver billiger IR-LED-Streifen
Sound reaktiver billiger IR-LED-Streifen
Sound reaktiver billiger IR-LED-Streifen
Sound reaktiver billiger IR-LED-Streifen

Sound reaktiver billiger IR-LED-Streifen

Nun, die Idee kam, nachdem der LED-Streifen von AliExpress eingetroffen war und es keine Neopixel waren, sondern ein RGB-LED-Streifen mit 44krys oder 24-Tasten-Fernbedienungstypen, Dumb me lol, ich habe den falschen bestellt. Ich wollte sie für eine Party, aber mit Fernbedienung! !! Naaah. Also habe ich meine Ärmel gefaltet und gegoogelt.

Habe einen ESP-basierten IR-Webserver, der die gleichen Fernbedienungstasten über den mit einer IR-LED verbundenen IR-Emitter-Pin abbildet.

Aber ich wollte etwas anderes wie einen reaktiven Sound, wieder habe ich viele Tutorials mit ws1811 oder Neopixeln und einige sogar mit MOSFETs und LEDs, aber ich hatte keine Zeit, also habe ich einen dummen Ansatz von Mapping Audio versucht, obwohl A0 PIn of esp und Mapping der Ausgabe in Buckets, um einige Kombinationen von IR-Fernbedienungstasten zu aktivieren Meistens nur RGB, aber ich wette, Sie werden es besser machen als ich.

Lieferungen

1. ein LED-Streifen offensichtlich mit Netzteil

2. esp8266 / Knoten mcu

3. IR-Emitter-LED

4. Ein Widerstand

5. Programmierkabel

6. Arduino-Idee

7. ein Lötkolben (einige grundlegende Lötarbeiten)

8. a 7805 ic (für die Verwendung der LED-Versorgung als ESP-Versorgung)

9. Ein Mikrofonmodul oder Aux y-Split für die Toneingabe

Schritt 1: Vorbereitung Esp

  • Verbinden Sie zunächst den Nodemcu mit einem Computer oder Laptop.
  • Installieren Sie nun den Treiber von nodemcu (google it).
  • Danach öffnet sich die Arduino IDE (Natürlich müssen Sie sie herunterladen und installieren)Klicken Sie auf "Tools" in der Arduino-Symbolleiste klicken Sie auf "Board" Wählen Sie "Board Manager" und suchen Sie nach esp8266)
  • Wählen Sie nun "Skizze" aus der Arduino-Symbolleiste aus, wählen Sie "Bibliothek einschließen" von dort aus wählen Sie "Bibliotheken verwalten" Suchen Sie nach "IRremoteESP8266" und installieren Sie es
  • Jetzt wird die Konfiguration nur über "Tools" vorgenommen. Wir müssen zu "Boards" gehen Wählen Sie "NodeMcu 1.0 (ESP 12-E)" oder eine andere Version von ESP8266.

Schritt 2: IR-LED vorbereiten und testen

IR-LED vorbereiten und testen
IR-LED vorbereiten und testen

Zunächst müssen wir die irLED-Bibliothek für esp installieren

Gehe hier hin

Identifizieren Sie Ihren LED-Streifen entweder mit einer 24-Tasten- oder 44-Tasten-Fernbedienung (größer).

Um den Fernbedienungscode zu erhalten, gehe HIER

Wenn die Bibliothek installiert ist, müssen wir unsere IR-LED vorbereiten, indem wir sie wie im Bild gezeigt anschließen. Darauf aufbauend die IR-LED anschließen, dann die folgende Skizze hochladen und die IR-LED auf den Controller richten. Der LED-Streifen sollte blinken (ein- und ausschalten). // funktioniert sowohl mit 24 als auch mit 44 Tasten Remote.

HIER ist der Code dazu.

#define IR_OFF 0xF740BF //Resektive IR-Codes in 32 Bit#define IR_ON 0xF7C0 #include<IRremoteESP8266.h IRsend irsend(4); // IR-Pin Void setup () {irsend.begin (); aufrechtzuerhalten. Void Schleife () {irsend.sendNEC (IR_ON, 32); Verzögerung (5000); irsend.sendNEC(IR_OFF, 32); Verzögerung (5000); }

Schritt 3: Verdrahten und Vorbereiten des Mikrofons

Verdrahten und Vorbereiten des Mikrofons
Verdrahten und Vorbereiten des Mikrofons
Verdrahten und Vorbereiten des Mikrofons
Verdrahten und Vorbereiten des Mikrofons

Wir werden nur den analogen Pin von Espe8266 A0 verwenden, um den Eingang als analoges Signal zu nehmen und ihn zum Auslösen der IR-LED basierend auf dem Ton zu verwenden

Verbinden Sie den Out-Pin mit a0

Verbinden Sie 5V mit Vin (AS-Knoten-MCU hat keinen 5V-Ausgang)

Das ist es, wir werden die an D2-Pin angeschlossene IR-LED auf den Empfänger des LED-Streifens ausrichten.

ein

Schritt 4: Laden Sie den Code hoch und er ist bereit zum Rocken

Laden Sie den Code hoch und er ist bereit zum Rocken
Laden Sie den Code hoch und er ist bereit zum Rocken
Laden Sie den Code hoch und er ist bereit zum Rocken
Laden Sie den Code hoch und er ist bereit zum Rocken

#include #include#define MikrofonPin A0 int sound; int sound1; const int irPin = 4; // d2IRsend irsend (irPin);void setup () { Serial.begin (9600); pinMode (MikrofonPin, INPUT); pinMode(irPin, OUTPUT);} // IR-LED-Codes #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_R 0xFF1AE5 // #define IR_G #xFF9A65 // definiere IR_B 0xFFA25D // #define IR_W 0xFF22DD // #define IR_B1 0xFF2AD5 // #define IR_B2 0xFFAA55 // #define IR_B3 0xFF926D // #define IR_B4 0xFF12ED // #define IR_B5 0xFF0AF5 // #define8 IR_B 75 0xFFB24D // #define IR_B8 0xFF32CD // #define IR_B9 0xFF38C7 // #define IR_B10 0xFFB847 // #define IR_B11 0xFF7887 // #define IR_B12 0xFFF807 // #define IR_B13 0xFF18E7 // #define IR_67_B15 #define IR_67_B14 / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR 0xFF08F7 // #define IR_DOWNG 0xFF4877 //DOWN define IR_SLOW 0xFFC837 // #define IR_DIY1 0xFF30CF // #define IR_DIY2 0xFFB04F // #define IR_DIY3 0xFF708F // #define IR_AUTO 0xFFF00F // #define IR_DIY4 0xFF10EF // #define IR_DIY5 0xFF906F // #define IR_DIY6 0xFF50AF // #define IR_FLASH 0xFFD02F // #define IR_JUMP3 0xFF20DF // #define IR_JUMP7 0xFFA_FADE3 / Void Schleife () { Ton = analogRead (MikrofonPin); // Eingangsaudiosignal erhalten, das Serial.print (Ton) liest; // Audiosignalwerte in die serielle Anzeige eingeben Serial.print (" "); if (sound > 415) {sound1 = map(sound, 415, 750, 140, 255); // höhere Frequenzwerte, die über dem Offset liegen, auf die Skala von 150 - 255 abbilden } else if (Sound > 340 && Sound < 415) // Offset-Messung auf Null-Skala halten..hier Offset-Wert im Bereich von 340 - 415 (Offset-Wert bei 1,45 V)..es hängt von den in der Schaltung verwendeten Komponenten ab. { Sound1 = Map (Sound, 340, 415, 0, 9); aufrechtzuerhalten. Sonst if (Sound 240) {irsend.sendNEC (IR_FLASH, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); irsend.sendNEC(IR_QUICK, 32); aufrechtzuerhalten. Sonst if ((sound1) > 200) {irsend.sendNEC (IR_G, 32); irsend.sendNEC(IR_B, 32); Verzögerung (120);} sonst if (sound1 > 160) {irsend.sendNEC (IR_R, 32); irsend.sendNEC(IR_B, 32); Verzögerung (120); aufrechtzuerhalten. Sonst if (sound1 > 120) {irsend.sendNEC (IR_B, 32); Verzögerung (120); aufrechtzuerhalten. Sonst if (sound1 > 80) {irsend.sendNEC (IR_B, 32); Verzögerung (120); aufrechtzuerhalten. Sonst if (sound1 > 40) {irsend.sendNEC (IR_G, 32); Verzögerung (120); aufrechtzuerhalten. Sonst if (sound1 > 10) {irsend.sendNEC (IR_R, 32); Verzögerung (120);} sonst { irsend.sendNEC (IR_FADE7, 32); Verzögerung (120); } Serial.println (Sound1); Verzögerung (50); }