Mục lục:

Đèn nền RGB + Trình hiển thị âm thanh: 4 bước (có hình ảnh)
Đèn nền RGB + Trình hiển thị âm thanh: 4 bước (có hình ảnh)

Video: Đèn nền RGB + Trình hiển thị âm thanh: 4 bước (có hình ảnh)

Video: Đèn nền RGB + Trình hiển thị âm thanh: 4 bước (có hình ảnh)
Video: SABER effect, Free Plugin ai cũng phải có trên After Effect 2024, Tháng bảy
Anonim
Đèn nền RGB + Trình hiển thị âm thanh
Đèn nền RGB + Trình hiển thị âm thanh
Đèn nền RGB + Trình hiển thị âm thanh
Đèn nền RGB + Trình hiển thị âm thanh

Chào mừng bạn đến với Tài liệu hướng dẫn của tôi về cách tạo đèn nền LED RGB cho ví dụ: mặt sau của TV hoặc bàn làm việc của bạn.

Bản thân sơ đồ rất đơn giản vì các dải LED WS2812 rất dễ giao tiếp với ví dụ như Arduino Nano.

Lưu ý: bạn không cần phải sử dụng thêm mạch Phân tích âm thanh MSGEQ7 nếu bạn chỉ muốn Đèn nền LED mà không có hình ảnh âm thanh.

Tôi đã cung cấp danh sách chi tiết các bộ phận đã sử dụng và bạn có thể mua chúng ở đâu:

  • Arduino Nano / Uno (Amazon / AliExpress)
  • WS2812 RGB LED Strip (Amazon / AliExpress), lưu ý rằng IP là viết tắt của khả năng bảo vệ (ví dụ: chống thấm nước nếu bạn cần) và số là viết tắt của số lượng đèn LED trên mỗi mét mà dải có (quan trọng đối với nguồn điện)
  • Nguồn điện 5V (Amazon) (phụ thuộc vào số lượng dải đèn LED) -> mỗi đèn LED mất ~ 20mA, dải được sử dụng trong hướng dẫn này có 45 đèn LED (30 mỗi mét) vì vậy tôi cần nguồn cung cấp 45 * 20mA ~ 1,5Ampere (Arduino, MSGEQ7 cũng cần một số), tôi đã liên kết một bộ nguồn cung cấp 3A, chắc chắn là đủ cho chúng tôi bây giờ
  • Giắc cắm âm thanh 3,5 mm (Amazon / AliExpress)
  • Chiết áp 10kOhm (Amazon / AliExpress)
  • Nút ấn (Amazon / AliExpress)
  • Điện trở (1x 10kOhm, 1x 220Ohm, cho MSGEQ7: 2x100kOhm)
  • Tụ điện (1x 1000yF Electrolytic (Amazon / AliExpress), 2x 10nF, cho MSGEQ7: 2x 0,1yF, 1x33pF (Amazon / AliExpress)
  • Diode đơn giản (Amazon / AliExpress)
  • DC Jack (Amazon / AliExpress)

Bước 1: Xây dựng giản đồ

Xây dựng lược đồ
Xây dựng lược đồ
Xây dựng lược đồ
Xây dựng lược đồ
Xây dựng lược đồ
Xây dựng lược đồ

Sơ đồ chính:

Vì vậy, để giao tiếp WS2812 Strip với Arduino, bạn khá dễ dàng sử dụng thư viện Adafruit_NeoPixel.

Dải LED có 3 chân: VCC, DATA, GND. VCC được kết nối với 5V, GND tới Ground và Chân DATA ở giữa được kết nối với LED_DATA Pin D6 trên Arduino. Giờ đây, mỗi đèn LED trên dải đều có chip WS2812 trên đó lấy Dữ liệu mà nó nhận được từ Arduino và chuyển cho đèn LED tiếp theo, do đó chúng ta chỉ cần cấp dữ liệu Led một lần cho đèn LED đầu tiên trên dải.

Logic của Nút nhấn để thay đổi chế độ và Chiết áp để điều khiển Độ sáng được giải thích trong Bước tiếp theo.

Sơ đồ chính xác có thể được tìm thấy trong Ảnh chụp màn hình của tệp fritzing cũng có sẵn để tải xuống.

Lưu ý là chỉ kết nối Chân 5V của Arduino với Nguồn cấp qua Diode, để Arduino không bị hỏng nếu chúng ta cắm Cáp USB để lập trình. 10nF và 1000uF cũng vì lý do an toàn, để không xảy ra tình trạng thiếu điện.

Đối với mạch MSGEQ7:

Đây là mạch phổ biến nhất để kết nối MSGEQ7 với Arduino. Đây cũng là nơi bạn cần Jack âm thanh 3,5 mm. Chân giữa của hầu hết các Jack âm thanh là GND, các chân bên trái / phải là các kênh âm thanh nổi kết nối qua tụ điện 10nF với Chân tín hiệu đầu vào của MSGEQ7 như trong sơ đồ. Ngoài ra, bạn có thể thêm chiết áp vào Chân tín hiệu để kiểm soát độ nhạy của Tín hiệu âm thanh, nhưng thực sự không cần thiết. MSGEQ7 được kết nối với Arduino bằng chân Analog Out kết nối với A1 (MSGEQ_OUT), Pin Strobe tới D2 (STROBE), Pin Reset thành D5 (RESET).

Bước 2: Mã

Mật mã
Mật mã
Mật mã
Mật mã
Mật mã
Mật mã

Liên kết GitHub để hoàn thành Sketch: PhilKes / RGB_Audio_Backlight

Ghi chú về mã:

Trong mã, chúng tôi khai báo đối tượng WS2812 Strip với đối tượng Adafruit_NeoPixel mới, truyền số lượng Led (thay đổi NUM_LEDS cho bạn thiết lập), Pin Arduino được kết nối với chân LED_DATA và kiểu mã hóa + tốc độ truyền các giá trị màu.

Khi điều này được thực hiện, chúng tôi đặt Độ sáng mặc định trong setup () thông qua setBrightness (0-255) và bật Strip with begin (). Giờ đây, chúng tôi có thể đặt từng Pixel / LED riêng lẻ thành Màu RGB cụ thể với setPixel (LED, Color). Khi chúng tôi hoàn tất, đặt tất cả các đèn LED thành các giá trị mới, chúng tôi cập nhật dải bằng dải.show (). Về cơ bản, đó là tất cả logic mã chúng ta cần để lập trình bất kỳ hoạt ảnh nào chúng ta muốn. Bây giờ để thực sự điều khiển Hoạt ảnh / Chế độ, chúng ta thêm Nút ấn / Công tắc xúc giác vào Arduino. Do đó, chúng tôi kết nối một đầu của Nút với VCC và đầu kia với Chân D3 của Arduino và với một điện trở 10kOhm tới GND. Chúng tôi đính kèm một Ngắt vào Ghim này trong setup (), kích hoạt lệnh gọi đến phương thức changeMode () mỗi khi chúng tôi nhấn nút. Trong changeMode (), chúng ta đơn giản chuyển sang chế độ tiếp theo và yêu cầu hoạt ảnh hiện tại bị phá vỡ. Khi điều đó xảy ra, vòng lặp () mới được thực thi và sẽ phát Hoạt ảnh / Chế độ mới.

Các hình ảnh động được cung cấp bao gồm: Màu sắc cầu vồng mờ dần, Màu đỏ, Màu xanh lá cây, Màu xanh lam, Màu trắng, Chế độ phân tích âm nhạc

Ngoài ra, tôi đã thêm một chiết áp 10kOhm để kiểm soát độ sáng của Dải. method checkBrightness () kiểm tra đầu ra của Potentiometer được kết nối với Pin A2 (Pin giữa của Potentiometer) và cập nhật độ sáng của Strip cho phù hợp.

Đối với chế độ musicAnalyzer () qua MSGEQ7:

Chế độ này hiển thị Tín hiệu âm thanh được kết nối với Tín hiệu vào của MSGEQ7. MSGEQ xuất ra Tín hiệu tương tự thể hiện một dải âm thanh duy nhất (8 Dải tần, từ tần số Thấp đến Cao). Phương thức musicAnalyzer () nhận các giá trị hiện tại của các dải âm thanh bằng cách đặt lại MSGEQ và sau đó đệm các giá trị tương tự được cung cấp. Có thể thay đổi băng tần được xuất ra bằng cách đặt một sườn cao trên Pin Strobe. Sau khi tất cả 8 Dải tần đã được lưu vào bộ đệm, phương pháp sẽ dịch chuyển tất cả các giá trị Pixel LED xuống một phía sau và tính Giá trị mới cho đèn LED 0. Màu bao gồm: Tần số thấp (Âm trầm) Màu đỏ, Màu xanh lục tần số trung bình và Màu xanh lam tần số cao. Việc thay đổi giá trị trước khi tải giá trị mới mang lại cho chúng ta một hình ảnh động theo thời gian mượt mà đẹp mắt.

Bước 3: Thiết lập âm thanh trên PC

Image
Image

Để đưa nhạc / âm thanh của bạn vào MSGEQ7 nhưng vẫn phát nhạc trên loa, bạn phải sử dụng tính năng RealtekHD Stereomix hoặc kết nối Đầu vào âm thanh MSGEQ với ví dụ: đầu ra loa sau của soundcard / bo mạch chủ của bạn.

Để kích hoạt Stereomix trong Win10, hãy nhấp chuột phải vào biểu tượng loa ở góc dưới bên phải và nhấp vào "Sounds", tại đây bạn có thể kích hoạt Stereomix trong Tab "Recording" (nhấp chuột phải -> kích hoạt). Nếu Âm thanh nổi không hiển thị, hãy nhấp chuột phải vào một lựa chọn "Hiển thị thiết bị bị tắt". Bây giờ, hãy mở cài đặt cho Âm thanh nổi và yêu cầu nó nghe và sao chép âm thanh của Loa chính của bạn.

Nếu bạn muốn sử dụng đầu ra loa sau, hãy mở cài đặt của loa chính trong menu "Âm thanh", Tab "Cải tiến" rồi chọn "Môi trường" từ danh sách và chọn "Phòng" trong menu thả xuống bên dưới.

Điều này hiện cho phép đầu ra âm thanh song song của loa của bạn và MSGEQ7.

Bước 4: Ghi chú

Vì sơ đồ không phức tạp và kích thước lớn nên tôi đã cố gắng đặt toàn bộ mạch vào một hộp nhỏ có lỗ cho đầu nối USB, Giắc cắm âm thanh, Giắc cắm DC, Chiết áp và Nút nhấn. Bạn có thể chỉ cần sử dụng đầu cắm chân đực / cái và kết nối 3 Cáp với WS2812 Strip thông qua cáp Jumper.

Đề xuất: