Mục lục:

Âm thanh phản ứng dải Ir Led giá rẻ: 4 bước
Âm thanh phản ứng dải Ir Led giá rẻ: 4 bước

Video: Âm thanh phản ứng dải Ir Led giá rẻ: 4 bước

Video: Âm thanh phản ứng dải Ir Led giá rẻ: 4 bước
Video: Điện tử cơ bản 18: Mắt thu,phát hồng ngoại IR 2024, Tháng mười một
Anonim
Âm thanh phản ứng dải Ir Led giá rẻ
Âm thanh phản ứng dải Ir Led giá rẻ
Âm thanh phản ứng dải Ir Led giá rẻ
Âm thanh phản ứng dải Ir Led giá rẻ
Âm thanh phản ứng dải Ir Led giá rẻ
Âm thanh phản ứng dải Ir Led giá rẻ

Âm thanh phản ứng dải Ir Led giá rẻ

tốt, ý tưởng đến sau khi dải đèn led đến từ AliExpress và chúng không phải là neopixel mà là dải LED RGB với các loại điều khiển từ xa 44krys hoặc 24 phím. !! Naaah. Vì vậy, tôi gấp tay áo của mình và tìm kiếm nó.

Có máy chủ Web IR dựa trên đặc biệt ánh xạ các nút từ xa tương tự qua chân bộ phát IR được kết nối với đèn LED IR.

nhưng tôi muốn một cái gì đó khác biệt như phản ứng âm thanh, một lần nữa tôi có rất nhiều Hướng dẫn với ws1811 hoặc neopixels và một số hướng dẫn thậm chí với MOSFET và LED`, nhưng tôi đã hết thời gian vì vậy tôi đã thử cách tiếp cận Dumb của Mapping Audio mặc dù A0 PIn của esp và Lập bản đồ đầu ra trong thùng để chỉ cho phép một số kết hợp của Nút điều khiển từ xa IR MOstly rgb nhưng tôi cá là bạn sẽ làm cho nó tốt hơn tôi.

Quân nhu

1. một dải LED rõ ràng với nguồn điện

2. esp8266 / node mcu

3. Ir Emitter đã dẫn

4. Một điện trở

5. Cáp lập trình

6. arduino Ide

7. một mỏ hàn (một số cách hàn cơ bản)

8. một ic 7805 (để sử dụng nguồn cung cấp dẫn đầu như nguồn cung cấp đặc biệt)

9. Mô-đun mmicrophone hoặc bộ chia aux y cho Đầu vào âm thanh

Bước 1: Chuẩn bị Esp

  • Trước hết, kết nối Nodemcu với máy tính hoặc máy tính xách tay.
  • Bây giờ cài đặt trình điều khiển của gật đầu (google nó).
  • Sau khi mở IDE này, Arduino IDE (Tất nhiên bạn cần tải xuống và cài đặt nó) Nhấp vào "Công cụ" trên thanh công cụ Arduino nhấp vào "Bảng" Chọn "Quản lý bảng" và tìm kiếm esp8266 cài đặt nó (sẽ mất một thời gian để hoàn thành)
  • Bây giờ, chọn "Sketch" từ thanh công cụ Arduino chọn "Bao gồm Thư viện" từ đó chọn "Quản lý thư viện" Tìm kiếm "IRremoteESP8266" và cài đặt nó
  • Bây giờ cấu hình chỉ được thực hiện từ "Công cụ", chúng tôi cần phải đi đến "Bảng" Chọn "NodeMcu 1.0 (ESP 12-E)" hoặc phiên bản khác của ESP8266.

Bước 2: Chuẩn bị và kiểm tra đèn LED hồng ngoại

Chuẩn bị và kiểm tra đèn LED hồng ngoại
Chuẩn bị và kiểm tra đèn LED hồng ngoại

Trước hết, chúng ta cần cài đặt thư viện irLED cho esp

Đến đây

Nhận dạng dải đèn led của bạn từ xa 24 phím hoặc 44 phím (lớn hơn)

để nhận mã điều khiển từ xa, hãy truy cập TẠI ĐÂY

Với thư viện được cài đặt, chúng ta cần chuẩn bị đèn LED hồng ngoại bằng cách kết nối nó như được hiển thị trong Hình ảnh. Dựa trên nó kết nối IR LED, sau đó tải lên Sketch sau và trỏ IR LED vào bộ điều khiển. Dải đèn LED sẽ nhấp nháy (bật và tắt). // hoạt động cả với Điều khiển từ xa 24 và 44 phím.

ĐÂY là mã để làm như vậy.

#define IR_OFF 0xF740BF // Mã ir tương ứng trong 32 bit # xác định IR_ON 0xF7C0 #include <IRremoteESP8266.h IRsend irsend (4); // Chân hồng ngoại void setup () {irsend.begin (); } void loop () {irsend.sendNEC (IR_ON, 32); chậm trễ (5000); irsend.sendNEC (IR_OFF, 32); chậm trễ (5000); }

Bước 3: Nối dây và chuẩn bị micrô

Đấu dây và chuẩn bị micrô
Đấu dây và chuẩn bị micrô
Đấu dây và chuẩn bị micrô
Đấu dây và chuẩn bị micrô

Chúng tôi sẽ chỉ sử dụng chân Analog của Espe8266 A0 để lấy đầu vào là tín hiệu tương tự và sử dụng nó để kích hoạt đèn led dựa trên âm thanh

Kết nối Pin ra với a0

Kết nối 5V với Vin (mcu nút AS không có đầu ra 5v)

thế là xong chúng ta sẽ căn chỉnh đèn LED hồng ngoại kết nối với chân D2 vào Bộ thu của dải LED.

Một

Bước 4: Tải lên mã và mã sẵn sàng để phát huy

Tải lên mã và mã sẵn sàng để phát huy
Tải lên mã và mã sẵn sàng để phát huy
Tải lên mã và mã sẵn sàng để phát huy
Tải lên mã và mã sẵn sàng để phát huy

#include # include # xác định âm thanh int microphonePin A0; int sound1; const int irPin = 4; // d2IRsend irsend (irPin); void setup () {Serial.begin (9600); pinMode (microphonePin, INPUT); pinMode (irPin, OUTPUT);} // Mã ir dẫn #define IR_BPlus 0xFF3AC5 // #define IR_BMinus 0xFFBA45 // #define IR_ON 0xFF827D // #define IR_OFF 0xFF02FD // #define IR_R 0xFF1AE5 // # 0xFFine xác định 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 0xFF0AFine IR_B6 // #define IR_B5 0xFF0AFine IR_B7 // #define IR_B5 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 // # 0define IR5867 // # 0dexFF98 IR5867 // 0 / #define IR_B16 0xFFD827 // #define IR_UPR 0xFF28D7 // #define IR_UPG 0xFFA857 // #define IR_UPB 0xFF6897 // #define IR_QUICK 0xFFE817 // #define IR_DOWNR 0xFF08F7 // # 0dexFF 0xFF08F7 // #define IRFF88_88 định nghĩa 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_fine IRFADE_ 0FADE / void loop () {sound = analogRead (microphonePin); // nhận tín hiệu âm thanh đầu vào đọc Serial.print (sound); // nhập các bài đọc tín hiệu âm thanh vào Serial display Serial.print (""); if (sound> 415) {sound1 = map (sound, 415, 750, 140, 255); // ánh xạ các giá trị tần số cao hơn nằm trên mức bù với tỷ lệ 150 - 255} else if (sound> 340 && sound <415) // giữ giá trị chênh lệch về tỷ lệ 0..có giá trị bù trong khoảng 340 - 415 (giá trị bù ở 1.45v)..its phụ thuộc vào các thành phần được sử dụng trong mạch.. {sound1 = map (sound, 340, 415, 0, 9); } else if (âm thanh 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); chậm trễ (120); } else if (sound1> 120) {irsend.sendNEC (IR_B, 32); chậm trễ (120); } else if (sound1> 80) {irsend.sendNEC (IR_B, 32); chậm trễ (120); } else if (sound1> 40) {irsend.sendNEC (IR_G, 32); chậm trễ (120); } else if (sound1> 10) {irsend.sendNEC (IR_R, 32); delay (120);} else {irsend.sendNEC (IR_FADE7, 32); chậm trễ (120); } Serial.println (sound1); chậm trễ (50); }

Đề xuất: