NeoPixel đầu tiên
Thuộc phần Màn hình và cảm biến trong hành trình Arduino của Coddy. Bài học 12 trên 24.
NeoPixel là một đèn LED RGB có một chip nhỏ bên trong. Nó dùng một dây dữ liệu thay vì ba chân màu: bo mạch gửi màu dưới dạng một loạt xung, rồi điểm ảnh giữ màu đó cho đến khi nhận màu mới.
Thư viện Adafruit_NeoPixel gửi các xung đó. Tạo một đối tượng với số lượng điểm ảnh, chân dữ liệu và loại điểm ảnh (NEO_GRB + NEO_KHZ800 là thứ tự màu và tốc độ của các điểm ảnh này):
#include <Adafruit_NeoPixel.h>
Adafruit_NeoPixel pixel(1, 6, NEO_GRB + NEO_KHZ800);Trong setup(), pixel.begin() chuẩn bị chân dữ liệu. Sau đó, đặt màu cho một điểm ảnh bằng số thứ tự của nó (bắt đầu từ 0) và các giá trị đỏ, xanh lá, xanh dương, mỗi giá trị từ 0 đến 255:
pixel.setPixelColor(0, 255, 0, 0); // pixel 0: màu đỏ tối đa
pixel.show(); // gửi đisetPixelColor() chỉ lưu màu vào bộ nhớ của bo mạch. Điểm ảnh không thay đổi cho đến khi show() gửi màu đó.
Thử thách
DễMột NeoPixel được nối với chân 6. Trong setup():
- khởi động nó bằng
pixel.begin() - đặt pixel 0 thành màu xanh lá
- gửi màu bằng
pixel.show()
Nhấn Chạy, sau đó nhấn Kiểm tra.
Tự làm thử
#include <Adafruit_NeoPixel.h>
// 1 pixel, dữ liệu trên chân 6
Adafruit_NeoPixel pixel(1, 6, NEO_GRB + NEO_KHZ800);
void setup() {
// khởi động pixel, rồi cho nó sáng màu xanh lá
}
void loop() {
}
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Màn hình và cảm biến
3NeoPixels
NeoPixel đầu tiênMàu sắc trên vòng NeoPixelTô đầy và xóa vòngHiệu ứng đuổi pixelĐộ sáng NeoPixelVòng cầu vồngTự luyện tập: Playground Arduino