ESP8266 Dải LED NeoPixel
Dải đèn LED NeoPixel RGB được tạo thành từ các LED mà màu sắc và độ sáng có thể được điều chỉnh riêng biệt. Hướng dẫn này chỉ cho bạn cách sử dụng ESP8266 để điều khiển dải đèn NeoPixel RGB. Cụ thể, chúng ta sẽ tìm hiểu:
- Cách kết nối dải LED NeoPixel với ESP8266
- Cách lập trình ESP8266 để điều khiển màu sắc của từng LED riêng lẻ trên dải LED NeoPixel
- Cách lập trình ESP8266 để điều khiển độ sáng của từng LED riêng lẻ trên dải LED NeoPixel
Chúng ta chỉ cần dùng một chân kỹ thuật số của ESP8266 để điều khiển tất cả các đèn LED trên dải LED.
Phần cứng cần chuẩn bị
| 1 | × | ESP8266 NodeMCU ESP-12E | ||
| 1 | × | Recommended: ESP8266 NodeMCU ESP-12E (Uno-form) | ||
| 1 | × | USB Cable Type-A to Type-C (for USB-A PC) | ||
| 1 | × | USB Cable Type-C to Type-C (for USB-C PC) | ||
| 1 | × | NeoPixel RGB LED Strip | ||
| 1 | × | 1000uF Capacitor | ||
| 1 | × | 470Ω Resistor | ||
| 1 | × | 5V Power Adapter | ||
| 1 | × | DC Power Jack | ||
| 1 | × | dây jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP8266 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP8266 Type-C |
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về dải LED NeoPixel RGB
Sơ đồ chân của dải LED NeoPixel
Dải đèn LED NeoPixel RGB có ba chân cần được kết nối đúng cách:
- Chân GND phải được kết nối với GND (0V)
- Chân VCC nên được kết nối với 5V từ nguồn cấp ngoài
- Chân Din là chân nhận tín hiệu điều khiển và nên được kết nối với một chân của ESP8266
※ Lưu ý:
Thứ tự các chân có thể khác nhau tùy thuộc vào nhà sản xuất. Việc sử dụng các ký hiệu được in trên dải LED là bắt buộc.
Sơ đồ đấu dây
This image is created using Fritzing. Click to enlarge image
Xem thêm Sơ đồ chân ESP8266 và Cách cấp nguồn cho ESP8266.
Cách Lập Trình Cho Dải LED NeoPixel RGB
- Tạo một đối tượng NeoPixel
- Dải LED 30 bóng
- Khởi tạo dải NeoPixel chứa 30 bóng LED
- Xác định màu sắc của từng LED (được biết đến như một pixel).
- Điều chỉnh độ sáng của tất cả các dải.
※ Lưu ý:
- NeoPixel.setBrightness() được sử dụng để điều chỉnh độ sáng của toàn bộ các pixel trên dải LED. Để thiết lập độ sáng cho từng pixel riêng lẻ, chúng ta có thể điều chỉnh các giá trị màu (R, G, B) với cùng một tỷ lệ.
- Các giá trị được thiết lập bởi NeoPixel.setBrightness() và NeoPixel.setPixelColor() sẽ chỉ được áp dụng khi NeoPixel.show() được thực thi.
Mã ESP8266
Mã dưới đây thực hiện các bước sau:
- Chuyển các pixel sang màu xanh lá cây từng pixel một với một khoảng trễ giữa mỗi pixel
- Tắt tất cả các pixel trong hai giây
- Bật sáng tất cả các pixel màu đỏ đồng thời trong hai giây
- Lặp lại quá trình này vô hạn
Hướng dẫn từng bước
Để bắt đầu với ESP8266 trên Arduino IDE, hãy làm theo các bước sau:
- Xem hướng dẫn ESP8266 - Cài đặt phần mềm nếu đây là lần đầu bạn sử dụng ESP8266.
- Nối các thành phần như được thể hiện trong sơ đồ.
- Kết nối bo mạch ESP8266 với máy tính của bạn bằng một cáp USB.
- Mở Arduino IDE trên máy tính của bạn.
- Chọn bo mạch ESP8266 phù hợp, ví dụ NodeMCU 1.0 (ESP-12E Module), và cổng COM tương ứng của nó.
- Nhấp vào biểu tượng Libraries ở thanh bên trái của Arduino IDE.
- Tìm kiếm “Adafruit NeoPixel” và tìm thư viện NeoPixel từ Adafruit.
- Sau đó, nhấn nút Install để cài đặt thư viện NeoPixel.
- Sao chép mã và mở nó trong Arduino IDE.
- Nhấn nút Nạp để gửi mã đến ESP8266.
- Xem hiệu ứng đèn LED.
※ Lưu ý:
Đối với bất kỳ hiệu ứng LED phức tạp nào, chúng tôi cung cấp dị vụ lập trình trả phí
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.