Мазмұны:

Дыбыстық реактивті арзан Ir Led Strip: 4 қадам
Дыбыстық реактивті арзан Ir Led Strip: 4 қадам

Бейне: Дыбыстық реактивті арзан Ir Led Strip: 4 қадам

Бейне: Дыбыстық реактивті арзан Ir Led Strip: 4 қадам
Бейне: Дүние жүзінде Cessna ұшқышы! 🛩🌥🌎 - Geographical Adventures GamePlay 🎮📱 🇰🇿 2024, Шілде
Anonim
Дыбыстық реактивті арзан Ir Led Strip
Дыбыстық реактивті арзан Ir Led Strip
Дыбыстық реактивті арзан Ir Led Strip
Дыбыстық реактивті арзан Ir Led Strip
Дыбыстық реактивті арзан Ir Led Strip
Дыбыстық реактивті арзан Ir Led Strip

Дыбыстық реактивті арзан Ir Led Strip

Жақсы, бұл идея AliExpress -тің жетекші жолағы келгеннен кейін пайда болды және олар неопиксельдер емес, 44krys немесе 24 негізгі қашықтан басқару құралдары бар RGB светодиодты, Dumb me lol, мен дұрыс емеске тапсырыс бердім. !! Нааа. Сондықтан мен жеңдерімді бүктеп, оны гуглмен аштым.

IR -дегі жалғанған инфрақызыл сәулелендіру түйіні арқылы сол қашықтағы түймелерді салыстыратын esp негізіндегі IR веб -сервері бар.

бірақ мен реактивті дыбыс сияқты басқаша нәрсені алғым келді, тағы да менде ws1811 немесе неопиксельдері бар көптеген оқулықтар болды, ал кейбіреулері тіпті MOSFET пен жарықдиодты болды, бірақ менде уақыт жоқ, сондықтан мен A0 PIN болса да дыбысты салыстырудың ақымақ тәсілін қолданып көрдім. esp және IR қашықтан басқару түймелерінің кейбір комбинациясын қосу үшін шығымды шелектермен салыстыру тек rgb, бірақ мен оны сізден жақсы жасайсыз деп ойлаймын.

Жабдықтар

1. Қуат көзі бар жарық диодты жолақтар

2. esp8266 / түйін mcu

3. Ир Эмиттер басқарды

4. Резистор

5. Бағдарламалау кабелі

6. arduino ide

7. дәнекерлеу үтігі (кейбір негізгі дәнекерлеуіштер)

8. 7805 ic (LED жеткізілімін esp жеткізілім ретінде пайдалану үшін)

9. Дыбысты енгізу үшін микрофон модулі немесе қосалқы модуль

1 -қадам: Esp дайындау

  • Ең алдымен, Nodemcu -ны компьютерге немесе ноутбукке қосыңыз.
  • Енді nodemcu драйверін орнатыңыз (google it).
  • Осы ашылғаннан кейін Arduino IDE (әрине, оны жүктеп алып, орнату қажет) Arduino құралдар тақтасындағы «Құралдар» түймесін басыңыз, «Тақта» түймесін басып, «Тақта менеджерін» таңдап, esp8266 орнатуды іздеңіз (аяқтауға біраз уақыт кетеді))
  • Енді Arduino құралдар тақтасынан «Эскизді» таңдаңыз, «Кітапхананы қосуды» таңдаңыз, ол жерден «Кітапханаларды басқару» тармағын таңдаңыз «IRremoteESP8266» іздеңіз және оны орнатыңыз.
  • Енді конфигурация тек «Құралдар» арқылы жасалады, біз «тақталарға» өтуіміз керек «NodeMcu 1.0 (ESP 12-E)» немесе ESP8266 басқа нұсқасын таңдаңыз.

2 -қадам: IR жарықдиодты дайындау және тексеру

IR светодиодын дайындау және сынау
IR светодиодын дайындау және сынау

Ең алдымен, біз esp үшін irLED кітапханасын орнатуымыз керек

Мұнда барыңыз

24 жолақты немесе 44 кілт (үлкенірек) қашықтан басқару пультінің жолағын анықтау

Қашықтан басқару пультінің кодын алу үшін мына жерді басыңыз

Кітапхана орнатылған кезде, біз суретте көрсетілгендей жалғау арқылы IR светодиодты дайындауымыз керек. Оның негізінде IR светодиодты қосыңыз, содан кейін келесі эскизді жүктеңіз және ИК жарықдиодты контроллерге бағыттаңыз. Жарық диодты жолақ жыпылықтауы керек (қосылады және өшеді). // Remote 24 және 44 пернелерімен жұмыс істейді.

МҰНДА осылай жасауға болатын код.

#define IR_OFF 0xF740BF // 32 биттегі резективті IR кодтары #IR_ON 0xF7C0 анықтау #қосу <IRremoteESP8266.h IRsend irsend (4); // IR pin void setup () {irsend.begin (); } void loop () {irsend.sendNEC (IR_ON, 32); кешіктіру (5000); irsend.sendNEC (IR_OFF, 32); кешіктіру (5000); }

3 -қадам: микрофонды қосу және дайындау

Микрофонды қосу және дайындау
Микрофонды қосу және дайындау
Микрофонды қосу және дайындау
Микрофонды қосу және дайындау

Біз аналогтық сигнал ретінде кірісті қабылдау және оны дыбысқа негізделген светодиодты қосу үшін Espe8266 A0 аналогтық түйреуішін қолданамыз.

A0 -ге түйреуішті қосыңыз

5В -ты Винге қосыңыз (AS түйінінің mcu -да 5в шығысы жоқ)

біз D2 түйреуішіне қосылған IR светодиодты диодты қабылдағышқа теңестіреміз.

а

4 -қадам: Кодты жүктеңіз және ол дайын

Кодты жүктеңіз және ол дайын
Кодты жүктеңіз және ол дайын
Кодты жүктеңіз және ол дайын
Кодты жүктеңіз және ол дайын

#қосу #қосу #микрофонды анықтау A0 int дыбысы; int дыбысы1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (микрофонPin, INPUT); pinMode (irPin, OUTPUT);} // ir led Codes #IR_BPlus 0xFF3AC5 анықтаңыз // #IR_BMinus 0xFFBA45 // анықтаңыз IR_ON 0xFF827D // #анықтаңыз IR_OFF 0xFF02FD // #Aff IRF_Af9 IR_B 0xFFA25D анықтаңыз // #IR_W 0xFF22DD анықтаңыз // #IR_B1 0xFF2AD5 анықтаңыз // #IRfine IR_B2 0xFFAA55 // #IRfine IR_B3 0xFF926D // #FinFref IRF 0xFFB24D // #анықтау IR_B8 0xFF32CD // #IR_B9 анықтау 0xFF38C7 // #IRfine IR_B10 0xFFB847 // #анықтайтын IR_B11 0xFF7887 // #анықтайтын IR_B12 0xFFF807 // 0ff8 / #анықта IR_B16 0xFFD827 // #IR_UPR анықта 0xFF28D7 // #IR_UPG 0xFFA857 анықта // #IR_UPB 0xFF6897 анықта // // IRF анықта IRFFFF88 // IR_SLOW 0xFFC837 анықтаңыз // #IR_DIY1 0xFF30CF анықтаңыз // #IR_DIY2 0xFFB04F анықтаңыз // #IR_DIY3 0xFF708F анықтаңыз // #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); // кіріс дыбыстық сигналын оқу Serial.print (дыбыс); // Serial.print («») сериялық дисплейіне дыбыстық сигналдың көрсеткіштерін енгізу; if (дыбыс> 415) {дыбыс1 = карта (дыбыс, 415, 750, 140, 255); // жоғары жиіліктегі мәндерді 150 - 255 шкаласына сәйкес келтірілген жағдайда салыстыру, егер басқа (дыбыс> 340 && дыбыс <415) // офсеттік оқуды нөлдік шкалаға дейін сақтау.. мұнда 340 - 415 диапазонындағы ығысу мәні (ығысу мәні 1.45в)..ит схемада қолданылатын компоненттерге байланысты.. {sound1 = карта (дыбыс, 340, 415, 0, 9); } else if (дыбыс 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); } if 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); кешіктіру (120); } else if (sound1> 120) {irsend.sendNEC (IR_B, 32); кешіктіру (120); } if if (sound1> 80) {irsend.sendNEC (IR_B, 32); кешіктіру (120); } else if (sound1> 40) {irsend.sendNEC (IR_G, 32); кешіктіру (120); } if if (sound1> 10) {irsend.sendNEC (IR_R, 32); кешіктіру (120);} басқа {irsend.sendNEC (IR_FADE7, 32); кешіктіру (120); } Serial.println (дыбыс1); кешіктіру (50); }

Ұсынылған: