Turinys:

Garso reaktyvus pigus „Ir Led Strip“: 4 žingsniai
Garso reaktyvus pigus „Ir Led Strip“: 4 žingsniai

Video: Garso reaktyvus pigus „Ir Led Strip“: 4 žingsniai

Video: Garso reaktyvus pigus „Ir Led Strip“: 4 žingsniai
Video: Как сделать легкую цементную стяжку в старом доме. ПЕРЕДЕЛКА ХРУЩЕВКИ ОТ А до Я #12 2024, Lapkritis
Anonim
Garso reaktyvus pigus Ir Led juostelė
Garso reaktyvus pigus Ir Led juostelė
Garso reaktyvus pigus Ir Led juostelė
Garso reaktyvus pigus Ir Led juostelė
Garso reaktyvus pigus Ir Led juostelė
Garso reaktyvus pigus Ir Led juostelė

Garso reaktyvus pigus Ir Led juostelė

Na, idėja kilo po to, kai iš „AliExpress“atvyko LED juostelė ir jie buvo ne neopikseliai, bet RGB LED juostelė su 44 krys arba 24 pagrindiniais nuotolinio valdymo pultais, Dumb me lol, aš užsisakiau netinkamą. Aš norėjau jų vakarėliui, bet su nuotoliniu! !! Naaah. Taigi susilankau rankoves ir googlinau.

Turite esp pagrįstą IR žiniatinklio serverį, kuris tuos pačius nuotolinio valdymo mygtukus priskiria IR spinduliuotės kaiščiui, prijungtam prie IR šviesos diodo.

bet aš norėjau kažko kitokio, pavyzdžiui, reaguoti į garsą, vėl gavau daugybę vadovėlių su ws1811 ar neopikseliais, o kai kuriuos net su MOSFET ir LED, bet aš nespėjau, todėl išbandžiau kvailą garso kartografavimo metodą, nors A0 PIn esp ir išvesties suskirstymas į grupes, kad būtų galima naudoti kai kuriuos IR nuotolinio valdymo pulto derinius.

Prekės

1. LED juostelės akivaizdžiai su maitinimo šaltiniu

2. esp8266 / mazgas mcu

3. Ir Emitteris vedė

4. Rezistorius

5. Programavimo kabelis

6. arduino ide

7. lituoklis (kai kurie pagrindiniai lituokliai)

8. 7805 ic (naudojant LED maitinimą kaip esp tiekimą)

9. Garso įvesties mmikrofono modulis arba papildomas skyrius

1 žingsnis: Paruoškite esp

  • Pirmiausia prijunkite „Nodemcu“prie kompiuterio ar nešiojamojo kompiuterio.
  • Dabar įdiekite „nodemcu“tvarkyklę („Google“).
  • Po šio atidarymo „Arduino IDE“(žinoma, turite jį atsisiųsti ir įdiegti) „Arduino“įrankių juostoje spustelėkite „Įrankiai“, spustelėkite „Lenta“Pasirinkite „Lentos tvarkyklė“ir ieškokite esp8266 ją įdiegti (užtruks šiek tiek laiko)
  • Dabar „Arduino“įrankių juostoje pasirinkite „Eskizas“, iš ten pasirinkite „Įtraukti biblioteką“, pasirinkite „Tvarkyti bibliotekas“Ieškokite „IRremoteESP8266“ir įdiekite ją
  • Dabar konfigūracija atliekama tik iš „Įrankių“, mums reikia eiti į „Lentos“Pasirinkite „NodeMcu 1.0 (ESP 12-E)“arba kitą ESP8266 versiją.

2 žingsnis: IR šviesos diodo paruošimas ir bandymas

IR šviesos diodo paruošimas ir bandymas
IR šviesos diodo paruošimas ir bandymas

Visų pirma, turime įdiegti irLED biblioteką esp

Eik čia

Jūsų LED juostos identifikavimas 24 arba 44 klavišų (didesnis) nuotolinio valdymo pultu

Norėdami gauti nuotolinio valdymo pulto kodą, eikite ČIA

Įdiegę biblioteką, turime paruošti IR šviesos diodą, prijungdami jį, kaip parodyta paveikslėlyje. Remdamiesi juo, prijunkite IR šviesos diodą, tada įkelkite šį eskizą ir nukreipkite IR šviesos diodą į valdiklį. LED juostelė turėtų mirksėti (įsijungia ir išsijungia). // veikia su 24 ir 44 klavišais Nuotolinis.

ČIA yra kodas tai padaryti.

#define IR_OFF 0xF740BF // Resektyviniai kodai 32 bituose #define IR_ON 0xF7C0 #include <IRremoteESP8266.h IRsend irsend (4); // IR PIN void setup () {irsend.begin (); } void loop () {irsend.sendNEC (IR_ON, 32); vėlavimas (5000); irsend.sendNEC (IR_OFF, 32); vėlavimas (5000); }

3 žingsnis: Mikrofono prijungimas ir paruošimas

Mikrofono prijungimas ir paruošimas
Mikrofono prijungimas ir paruošimas
Mikrofono prijungimas ir paruošimas
Mikrofono prijungimas ir paruošimas

Mes naudosime tik analoginį „Espe8266 A0“kaištį, kad galėtume įvesti įvestį kaip analoginį signalą ir naudoti jį, kad suaktyvintų apšvietimą pagal garsą

Prijunkite kaištį prie a0

Prijunkite 5 V prie „Vin“(AS mazgas mcu neturi 5 V išėjimo)

tai mes suderinsime IR šviesos diodą, prijungtą prie D2 kaiščio, prie LED juostos imtuvo.

a

4 veiksmas: įkelkite kodą ir paruoštą naudoti

Įkelkite kodą ir paruoštą rokui
Įkelkite kodą ir paruoštą rokui
Įkelkite kodą ir paruoštą rokui
Įkelkite kodą ir paruoštą rokui

#include #include #define mikrofonasPin A0 int garsas; int garsas1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (mikrofonasPin, INPUT); pinMode (irPin, OUTPUT);} // ir led kodai #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_R 0xFX apibrėžti 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_F5_F5_F5 0xFFB24D // #define IR_B8 0xFF32CD // #define IR_B9 0xFF38C7 // #define IR_B10 0xFFB847 // #define IR_B11 0xFF7887 // #define IR_B12 0xFFF807 // #define IR_B0 0FF / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR 0xFFFF #IRFFFF apibrėžti 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 () {sound = analogRead (microphonePin); // gauti įvesties garso signalą Serial.print (garsas); // įvesti garso signalo rodmenis į serijinį ekraną Serial.print (""); if (garsas> 415) {sound1 = žemėlapis (garsas, 415, 750, 140, 255); // aukštesnio dažnio reikšmių, kurios yra aukščiau poslinkio, susiejimas su skalė nuo 150 iki 255} kitaip, jei (garsas> 340 ir garsas <415) // išlaikant poslinkio rodmenį iki nulio skalės.. čia poslinkio vertė yra 340–415 (poslinkio reikšmė esant 1.45v)..tai priklauso nuo grandinėje naudojamų komponentų.. {sound1 = map (sound, 340, 415, 0, 9); } else if (garsas 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 ((garsas1)> 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); vėlavimas (120); } else if (garsas1> 120) {irsend.sendNEC (IR_B, 32); vėlavimas (120); } else if (garsas1> 80) {irsend.sendNEC (IR_B, 32); vėlavimas (120); } else if (garsas1> 40) {irsend.sendNEC (IR_G, 32); vėlavimas (120); } else if (garsas1> 10) {irsend.sendNEC (IR_R, 32); delsa (120);} else {irsend.sendNEC (IR_FADE7, 32); vėlavimas (120); } Serial.println (garsas1); vėlavimas (50); }

Rekomenduojamas: