Thêm yêu thích đặt trang chủ
Chức vụ:Trang Chủ >> Tin tức >> điện tử

danh mục sản phẩm

sản phẩm Thẻ

Fmuser Sites

Đèn LED RGB địa chỉ WS2812B | Điều khiển bằng Arduino

Date:2021/10/18 21:55:58 Hits:
Trong dự án này, chúng ta sẽ xem xét một sản phẩm thú vị được gọi là Đèn LED địa chỉ WS2812B. Chúng là các đèn LED RGB có thể định địa chỉ riêng và còn được gọi bằng các tên khác nhau như NeoPixel của Adafruit chẳng hạn. Trong hướng dẫn này, chúng ta sẽ tìm hiểu về đèn LED WS2812B, cấu trúc và cấu tạo bên trong của nó cũng như cách điều khiển các đèn LED có địa chỉ riêng bằng Arduino. loại dự án liên quan đến đèn LED, thì bạn có thể đã sử dụng đèn LED rời (thông qua lỗ hoặc SMD). Các đèn LED này có thể là đèn LED đơn màu hoặc đèn LED RGB. Hạn chế chính của đèn LED rời là nếu bạn sử dụng chúng trong một mảng, bạn sẽ mất đặc quyền điều khiển chúng riêng lẻ. Ví dụ: nếu bạn kết nối ba hoặc bốn đèn LED với một chân duy nhất của Arduino bằng bóng bán dẫn, thì tất cả các đèn LED trong mảng sẽ có cùng một hoạt động tức là Kiểm soát độ sáng hoặc thay đổi màu sắc. Một tình huống khác là bạn cũng có thể đã sử dụng Đèn LED dải để trang trí Giáng sinh hoặc chiếu sáng nhà thông thường. Bạn có thể nhận thấy rằng ngay cả trong Đèn LED dải đắt tiền, bạn không có tính năng điều khiển các đèn LED riêng lẻ. Dải đèn LED định địa chỉ là nguồn sáng thông minh có chứa IC điều khiển và đèn LED RGB trong cùng một gói, thường ở dạng SMD 2812. Hình ảnh sau đây cho thấy một dải đèn LED WS2812B, thoạt nhìn, nó trông giống như một dải đèn LED thông thường. Nhưng khi kiểm tra kỹ hơn, bạn có thể tìm thấy IC điều khiển LED WS2812B được tích hợp vào Gói LED SMD 5050 RGB. Hình ảnh thổi phồng sau đây cho thấy điều tương tự. Khối LED WS2812B riêng lẻ có bốn chân là VDD, VSS (GND), DIN và DOUT. Chức năng của các chân này rất đơn giản và bảng sau đây mô tả chức năng đơn giản của các chân. Làm thế nào để các đèn LED WS2812B có thể được điều khiển riêng lẻ, mạch ứng dụng sau đây sẽ hữu ích. Tất cả các đèn LED WS2812B được kết nối theo tầng trong đó DO của đèn LED đầu tiên được kết nối với DIN của đèn LED thứ hai, v.v. Nhưng đèn LED đầu tiên phải nhận dữ liệu thông qua chân DIN của nó từ một Vi điều khiển như Arduino. Hình ảnh sau đây cho thấy sơ đồ khối mạch ứng dụng điển hình. Giao thức truyền dữ liệu được sử dụng bởi đèn LED WS2812B là Chế độ NRZ. Cổng DIN đầu tiên của mảng LED WS2812B nhận dữ liệu từ bộ vi điều khiển. Dữ liệu cho từng pixel riêng lẻ là 24 bit bao gồm dữ liệu điều khiển LED Đỏ, Xanh lục và Xanh lam riêng lẻ, mỗi pixel 8 bit. Thứ tự của dữ liệu phải là GRB và thành phần của dữ liệu 24 bit được hiển thị bên dưới. Lưu ý rằng dữ liệu bit CAO được gửi trước. Khi Khối WS2812B đầu tiên nhận được dữ liệu 24 bit đầu tiên, dữ liệu sẽ được gửi đến chốt bên trong của nó để giải mã thêm. Dữ liệu còn lại được định hình lại bằng mạch khuếch đại và định hình lại tín hiệu của nó và được chuyển đến pixel tiếp theo trong tầng thông qua chân DO. Làm thế nào để điều khiển LED WS2812B bằng Arduino? Trước khi đi sâu hơn vào việc thiết kế giản đồ, có một điều quan trọng mà chúng ta cần giải quyết, tức là nguồn điện cho dự án. Mỗi Pixel LED WS2812B riêng lẻ có ba đèn LED và một IC điều khiển. Vì vậy, yêu cầu hiện tại của một pixel là khoảng 60 mA. Nếu bạn có một dải chứa 20 đèn LED có thể định địa chỉ riêng lẻ WS2812B, thì tổng yêu cầu hiện tại là 20 * 60 mA = 1.2 A.Đây là nhiều hơn Arduino có thể cung cấp, thông qua cổng USB (có thể cung cấp tối đa 300 mA) hoặc thông qua giắc cắm thùng 5V (có thể cung cấp tối đa 900 mA). Vì vậy, cách tốt nhất để cấp nguồn cho dự án tức là Cả Arduino và WS2812B LED Strip đều có sự trợ giúp của nguồn điện 5v bên ngoài có thể cung cấp đủ dòng điện. kết nối giữa Arduino UNO và WS2812B RGB LED Strip. 5V của Arduino UNO và các đèn LED được kết nối với nguồn điện bên ngoài cùng với GND (VSS). Chân DIN của Dải LED được kết nối với chân IO kỹ thuật số 7 của Arduino thông qua một Điện trở 330Ω. Nguồn cung cấp (tối thiểu 2812A) Điện trở 5Ω Lập trình Arduino Bước đầu tiên để lập trình Arduino là tải xuống một thư viện hỗ trợ có tên “FastLED”. Bạn có thể tải xuống thư viện từ liên kết sau: “Thư viện FastLED”. Trích xuất nội dung của tệp zip và đổi tên thư mục thành “FastLED”. #define LEDPIN 7 #define NUMOFLEDS 10 LED CRGB [NUMOFLEDS]; void setup () {FastLED.addLeds(đã dẫn, NUMOFLEDS); } void loop () {for (int i = 0; i <= 9; i ++) {leds [i] = CRGB (0, 0, 255); FastLED.show (); chậm trễ (40); } for (int i = 9; i> = 0; i--) {leds [i] = CRGB (255, 0, 0); FastLED.show (); chậm trễ (40); }} Kết luận Một phần giới thiệu đơn giản về WS2812B Đèn LED địa chỉ riêng được đưa ra trong hướng dẫn này cùng với một dự án để chỉ ra cách chúng ta có thể điều khiển đèn LED WS2812B bằng Arduino. Nếu bạn hiểu những điều cơ bản này, thì bạn có thể thực hiện một loạt các dự án. Bài viết liên quan: Hiển thị POV bằng ArduinoCách sử dụng 74HC595 Shift Đăng ký với Arduino? 555 LED Flasher Circuit | 555 IC và 4017 ICArduino Hướng dẫn đa nhiệm Xúc xắc điện tử không thiên vị với đèn LED Máy tính điện trở LED | Cần cho điện trở dòng

Để lại lời nhắn 

Họ tên *
E-mail *
Điện thoại
Địa Chỉ
Xem mã xác minh? Nhấn vào làm mới!
Tin nhắn
 

Danh sách tin nhắn

Comment Đang tải ...
Trang Chủ| Về chúng tôi| Sản phẩm| Tin tức| Tải về| HỖ TRỢ| Phản hồi| Liên hệ| Dịch vụ

Liên hệ: Zoey Zhang Web: www.fmuser.net

Whatsapp / Wechat: +86 183 1924 4009

Skype: tomleequan Email: [email được bảo vệ] 

Facebook: FMUSERBROADCAST Youtube: KHAI THÁC

Địa chỉ bằng tiếng Anh: Room305, HuiLanGe, No.273 HuangPu Road West, TianHe District., Quảng Châu, Trung Quốc, 510620 Địa chỉ bằng tiếng Trung: 广州市天河区黄埔大道西273号惠兰阁305(3E)