Sadržaj:

Zvučno reaktivna Jeftina Ir Led traka: 4 koraka
Zvučno reaktivna Jeftina Ir Led traka: 4 koraka

Video: Zvučno reaktivna Jeftina Ir Led traka: 4 koraka

Video: Zvučno reaktivna Jeftina Ir Led traka: 4 koraka
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Juli
Anonim
Zvučno reaktivan Jeftini Ir Led strip
Zvučno reaktivan Jeftini Ir Led strip
Zvučno reaktivan Jeftini Ir Led strip
Zvučno reaktivan Jeftini Ir Led strip
Zvučno reaktivan Jeftini Ir Led strip
Zvučno reaktivan Jeftini Ir Led strip

Zvučno reaktivan Jeftini Ir Led Strip

Pa, ideja je nastala nakon što je LED traka stigla sa AliExpress -a i nisu bili neopikseli, već RGB LED traka sa 44 krila ili 24 tipa daljinskih upravljača, Glupo lol, naručila sam pogrešnu. Htjela sam ih za zabavu, ali s daljinskim! !! Naaah. Pa sam presavio rukave i proguglao.

Imam infracrveni web server zasnovan na esp -u koji preslikava iste tastere na daljinskom upravljaču preko pina IC odašiljača spojenog na IC diodu.

ali želio sam nešto drugačije poput zvučno reaktivnog, opet sam dobio puno tutorijala sa ws1811 ili neopikselom, a neke čak i sa MOSFET -ovima i LED diodama, ali nisam imao vremena pa sam isprobao glupi pristup mapiranja zvuka preko A0 PIn esp i Mapiranje izlaza u kantama za omogućavanje nekih kombinacija IR daljinskih dugmadi MOSTly rgb samo, ali kladim se da ćete to učiniti boljim od mene.

Supplies

1. LED trake očigledno sa napajanjem

2. esp8266 / čvor mcu

3. Ir Emiter LED

4. Otpornik

5. Kabel za programiranje

6. arduino ide

7. lemilica (neko osnovno lemljenje)

8. a 7805 ic (za korištenje LED napajanja kao esp napajanja)

9. Modul mikrofona ili pomoćni priključak za ulaz zvuka

Korak 1: Priprema Esp

  • Prije svega, povežite Nodemcu sa računarom ili laptopom.
  • Sada instalirajte upravljački program za nodemcu (google it).
  • Nakon ovog otvaranja, Arduino IDE (Naravno, morate ga preuzeti i instalirati) Kliknite na "Alati" na Arduino traci s alatima, kliknite na "Ploča" Odaberite "Upravitelj ploče" i potražite esp8266 da ga instalirate (trebat će neko vrijeme da se dovrši))
  • Sada odaberite "Sketch" na Arduino alatnoj traci, odaberite "Include Library", zatim odaberite "Manage libraries" Potražite "IRremoteESP8266" i instalirajte ga
  • Sada se konfiguracija vrši samo iz "Alati". Moramo otići na "Ploče". Odaberite "NodeMcu 1.0 (ESP 12-E)" ili neku drugu verziju ESP8266.

Korak 2: Priprema i testiranje IC LED diode

Priprema i testiranje IC LED diode
Priprema i testiranje IC LED diode

Prije svega, moramo instalirati irLED biblioteku za esp

Idi ovdje

Prepoznavanje daljinskog upravljača sa 24 ključa ili sa 44 ključa (većim)

za dobijanje koda daljinskog upravljača idite OVDJE

S instaliranom bibliotekom, moramo pripremiti našu IR LED povezivanjem kao što je prikazano na slici. Na osnovu njega povežite IR LED, zatim učitajte sljedeću skicu i usmjerite IC LED na kontroler. LED traka bi trebala treptati (uključuje se i isključuje). // radi sa 24 i 44 ključa Daljinski.

OVDJE je kod za to.

#define IR_OFF 0xF740BF // Resektivni ir kodovi u 32 bita #define IR_ON 0xF7C0 #include <IRremoteESP8266.h IRsend irsend (4); // IC pin void setup () {irsend.begin (); } void loop () {irsend.sendNEC (IR_ON, 32); kašnjenje (5000); irsend.sendNEC (IR_OFF, 32); kašnjenje (5000); }

Korak 3: Ožičenje i priprema mikrofona

Ožičenje i priprema mikrofona
Ožičenje i priprema mikrofona
Ožičenje i priprema mikrofona
Ožičenje i priprema mikrofona

Koristit ćemo samo analogni pin Espe8266 A0 za uzimanje ulaza kao analognog signala i njegovu upotrebu za pokretanje LED -a na osnovu zvuka

Spojite pin na a0

Spojite 5V na Vin (AS čvor mcu nema izlaz 5V)

to je to, mi ćemo poravnati IC LED povezanu na D2 pin sa prijemnikom LED trake.

a

Korak 4: Prenesite kôd i spreman je za rock

Otpremite kôd i spreman je za rock
Otpremite kôd i spreman je za rock
Otpremite kôd i spreman je za rock
Otpremite kôd i spreman je za rock

#include #include #define microphonePin A0 int zvuk; int sound1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (microphonePin, INPUT); pinMode (irPin, OUTPUT);} // ir LED kodovi #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_RFFxxxx definiraj IR_B 0xFFA25D // #define IR_W 0xFF22DD // #define IR_B1 0xFF2AD5 // #define IR_B2 0xFFAA55 // #define IR_B3 0xFF926D // #define IR_B4 0xFF12ED // #define_FF6 0xFFB24D // #define IR_B8 0xFF32CD // #define IR_B9 0xFF38C7 // #define IR_B10 0xFFB847 // #define IR_B11 0xFF7887 // #define IR_B12 0xFFF807 // #define IR_BFF7 / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR 0xFFxxFFF7 definirati 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 () {zvuk = analogno čitanje (mikrofonPin); // primanje očitavanja ulaznog audio signala Serial.print (zvuk); // unos očitavanja audio signala na serijski prikaz Serial.print (""); if (zvuk> 415) {zvuk1 = mapa (zvuk, 415, 750, 140, 255); // mapiranje vrijednosti veće frekvencije koje su iznad pomaka na skali 150 - 255} inače ako (zvuk> 340 && zvuk <415) // čuvanje očitanja pomaka na nultoj ljestvici..ovdje vrijednost pomaka u rasponu 340 - 415 (vrijednost pomaka na 1.45v).. ovisi o komponentama koje se koriste u krugu.. {sound1 = map (zvuk, 340, 415, 0, 9); } else if (zvuk 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 ((sound1)> 200) {irsend.sendNEC (IR_G, 32); irsend.sendNEC (IR_B, 32); delay (120);} else if (sound1> 160) {irsend.sendNEC (IR_R, 32); irsend.sendNEC (IR_B, 32); kašnjenje (120); } else if (sound1> 120) {irsend.sendNEC (IR_B, 32); kašnjenje (120); } else if (sound1> 80) {irsend.sendNEC (IR_B, 32); kašnjenje (120); } else if (sound1> 40) {irsend.sendNEC (IR_G, 32); kašnjenje (120); } else if (sound1> 10) {irsend.sendNEC (IR_R, 32); delay (120);} else {irsend.sendNEC (IR_FADE7, 32); kašnjenje (120); } Serial.println (sound1); kašnjenje (50); }

Preporučuje se: