Tartalomjegyzék:

Hangreaktív Olcsó Ir LED szalag: 4 lépés
Hangreaktív Olcsó Ir LED szalag: 4 lépés

Videó: Hangreaktív Olcsó Ir LED szalag: 4 lépés

Videó: Hangreaktív Olcsó Ir LED szalag: 4 lépés
Videó: Wi-fi адресная RGBIC COB LED лента WETEN для Tuya Smart, интеграция в Home Assistant 2024, Július
Anonim
Hangreaktív Olcsó Ir Led Strip
Hangreaktív Olcsó Ir Led Strip
Hangreaktív Olcsó Ir Led Strip
Hangreaktív Olcsó Ir Led Strip
Hangreaktív Olcsó Ir Led Strip
Hangreaktív Olcsó Ir Led Strip

Hangreaktív Olcsó Ir Led Strip

Nos, az ötlet azután jött, hogy a led szalag megérkezett az AliExpress -től, és nem neopixelek voltak, hanem RGB LED szalag 44krys vagy 24 kulcsos távirányítóval, Dumb me lol, rosszat rendeltem. Egy partira akartam őket, de távirányítóval! !! Naaah. Szóval összehajtottam az ujjamat, és google -oltam.

Van egy esp alapú IR webszerver, amely ugyanazokat a távoli gombokat képezi le az infravörös LED -hez csatlakoztatott infravörös sugárzó tűn.

de valami mást szerettem volna, mint egy hangreaktív, megint sok oktatóanyagot kaptam ws1811 -el vagy neopixellel, és néhányat még MOSFET -ekkel és LED -ekkel is, de elfogyott az időm, ezért megpróbáltam a hangleképezés buta megközelítését, bár A0 PIn esp és a kimenet leképezése vödrökben, hogy lehetővé tegye az IR távirányító gombok egyes kombinációit.

Kellékek

1. egy LED szalag nyilvánvalóan tápegységgel

2. esp8266 / node mcu

3. Ir Emitter vezette

4. Egy ellenállás

5. Programozókábel

6. arduino ide

7. forrasztópáka (néhány alapvető forrasztás)

8. egy 7805 ic (led tápegység ESP tápegységként való használatához)

9. Egy mmikrofon modul vagy aux y osztás a hangbemenethez

1. lépés: Az Esp

  • Először is csatlakoztassa a Nodemcu -t számítógéphez vagy laptophoz.
  • Most telepítse a nodemcu illesztőprogramját (google).
  • A megnyitás után az Arduino IDE (természetesen le kell töltenie és telepítenie) Kattintson az "Eszközök" elemre az Arduino eszköztáron, kattintson a "Board" elemre, válassza a "Board Manager" lehetőséget, és keresse meg az esp8266 telepítését (eltart egy ideig, amíg befejeződik))
  • Most válassza ki a "Vázlat" elemet az Arduino eszköztárából, válassza a "Könyvtár beillesztése" lehetőséget, majd válassza a "Könyvtárak kezelése" lehetőséget. Keresse meg az "IRremoteESP8266" kifejezést, és telepítse
  • Most a konfigurálás csak az "Eszközök" menüpontból történik, el kell mennünk a "Táblák" menübe Válasszuk a "NodeMcu 1.0 (ESP 12-E)" vagy valami más ESP8266 verziót.

2. lépés: Az IR LED előkészítése és tesztelése

Az IR LED előkészítése és tesztelése
Az IR LED előkészítése és tesztelése

Először is telepítenünk kell az irLED könyvtárat az esp

Menjen ide

A LED szalag azonosítása 24 gombos vagy 44 gombos (nagyobb) távirányítóval

A távirányító kódjának eléréséhez kattintson IDE

Ha a könyvtár telepítve van, elő kell készítenünk az IR LED -et az ábrán látható módon csatlakoztatva. Ennek alapján csatlakoztassa az IR LED -et, majd töltse fel a következő vázlatot, és irányítsa az IR LED -et a vezérlőre. A LED szalagnak villognia kell (be- és kikapcsol). // 24 és 44 gombos távvezérlővel is működik.

ITT találod a kódot.

#define IR_OFF 0xF740BF // Resektív ir kódok 32 bitben #define IR_ON 0xF7C0 #include <IRremoteESP8266.h IRsend irsend (4); // IR pin void setup () {irsend.begin (); } void loop () {irsend.sendNEC (IR_ON, 32); késleltetés (5000); irsend.sendNEC (IR_OFF, 32); késleltetés (5000); }

3. lépés: A mikrofon bekötése és előkészítése

A mikrofon bekötése és előkészítése
A mikrofon bekötése és előkészítése
A mikrofon bekötése és előkészítése
A mikrofon bekötése és előkészítése

Csak az Espe8266 A0 analóg érintkezőjét használjuk a bemenet analóg jelként történő felvételéhez, és annak használatához a hang alapján történő led kiváltásához

Csatlakoztassa a tűt a0 -hoz

Csatlakoztassa az 5V -ot a Vin -hez (az AS csomópont nem rendelkezik 5V kimenettel)

ennyi, a D2 tűhöz csatlakoztatott IR LED -et a LED szalag vevőjéhez igazítjuk.

a

4. lépés: Töltse fel a kódot, és készen áll a rockra

Töltse fel a kódot, és készen áll a rockra
Töltse fel a kódot, és készen áll a rockra
Töltse fel a kódot, és készen áll a rockra
Töltse fel a kódot, és készen áll a rockra

#include #include #define microphonePin A0 int hang; int hang1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (mikrofonPin, INPUT); pinMode (irPin, OUTPUT);} // ir led kódok #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_R 0xF1 definiálja az IR_B 0xFFA25D // #define IR_W 0xFF22DD // #define IR_B1 0xFF2AD5 // #define IR_B2 0xFFAA55 // #define IR_B3 0xFF926D // #define IR_B4 0xFF12ED // #define IRFFBB 0 0FFBB 0 0 0xFFB24D // #define IR_B8 0xFF32CD // #define IR_B9 0xFF38C7 // #define IR_B10 0xFFB847 // #define IR_B11 0xFF7887 // #define IR_B12 0xFFF807 // #define IR_B7_F0 / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR 0xFFF0 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 0xFFA05F // #define IR_FADE3 0xFF609F // #define IR_FADE7 0xFFE01F / / void loop () {hang = analógRead (mikrofonPin); // bemeneti hangjel leolvasása Serial.print (hang); // bemenet audiojel leolvasása soros kijelzőre Serial.print (""); if (hang> 415) {hang1 = térkép (hang, 415, 750, 140, 255); // a magasabb frekvenciaértékek leképezése az eltolás fölött a 150 - 255 skálára} else if (hang> 340 && hang <415) // az eltolás leolvasása nulla skálán.. itt az eltolás értéke 340 - 415 (eltolási érték 1.45v -nál).. az áramkörben használt komponensektől függ.. {sound1 = map (sound, 340, 415, 0, 9); } else if (hang 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); } else if ((hang1)> 200) {irsend.sendNEC (IR_G, 32); irsend.sendNEC (IR_B, 32); delay (120);} else if (hang1> 160) {irsend.sendNEC (IR_R, 32); irsend.sendNEC (IR_B, 32); késleltetés (120); } else if (hang1> 120) {irsend.sendNEC (IR_B, 32); késleltetés (120); } else if (hang1> 80) {irsend.sendNEC (IR_B, 32); késleltetés (120); } else if (hang1> 40) {irsend.sendNEC (IR_G, 32); késleltetés (120); } else if (hang1> 10) {irsend.sendNEC (IR_R, 32); delay (120);} else {irsend.sendNEC (IR_FADE7, 32); késleltetés (120); } Soros.println (hang1); késleltetés (50); }

Ajánlott: