Biểu đồ thanh bằng núm xoay
Thuộc phần Đầu ra trong hành trình Arduino của Coddy. Bài học 18 trên 24.
Một hàng đèn LED có thể hiển thị một con số dưới dạng thanh: càng nhiều đèn LED sáng thì con số càng lớn. Ở đây, con số được lấy từ núm xoay.
Trước tiên, chuyển giá trị đọc được thành số đèn LED cần sáng, từ 0 đến 5:
int count = map(analogRead(A0), 0, 1023, 0, 5);Sau đó, duyệt qua từng đèn LED bằng vòng lặp for và quyết định cho từng đèn. Các đèn LED trước vị trí count sẽ sáng, còn lại sẽ tắt:
for (int i = 0; i < 5; i++) {
if (i < count) {
digitalWrite(ledPins[i], HIGH);
} else {
digitalWrite(ledPins[i], LOW);
}
}else rất quan trọng: khi bạn vặn núm xoay xuống, câu lệnh này sẽ tắt các đèn LED không còn nằm trong thanh nữa.
Thử thách
Trung bìnhNúm xoay nối với A0 và các đèn LED nằm trong ledPins. Hãy tạo biểu đồ cột:
- chuyển số đọc thành số lượng từ 0 đến 5 bằng
map() - bật số đèn LED tương ứng, bắt đầu từ đèn đầu tiên trong mảng, rồi tắt các đèn còn lại
- chờ 10 ms, rồi lặp lại
Nhấn Chạy và xoay núm, rồi nhấn Kiểm tra.
Tự làm thử
const int knobPin = A0;
int ledPins[] = {2, 3, 4, 5, 6};
void setup() {
for (int i = 0; i < 5; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// chuyển giá trị đọc được thành số lượng từ 0 đến 5
// bật số đèn LED đầu tiên tương ứng với số lượng đó và tắt các đèn còn lại
}
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 Đầu ra
1Độ sáng
Làm mờ đèn LED bằng PWMChân PWM có ký hiệu ~Làm đèn LED sáng dầnSáng dần rồi tối dầnNúm điều chỉnh độ sáng4Vòng lặp và mảng
Lặp lại với vòng lặp forMảng chân LEDĐèn LED chạy năm bóngBiểu đồ thanh bằng núm xoayBộ đếm nhị phân bằng đèn LEDTự luyện tập: Playground Arduino