Arduino Nút Bật/Tắt Đèn LED
Trong Arduino - Nút nhấn - LED, chúng ta đã học cách bật LED khi nút được nhấn, và tắt LED khi nút được thả ra. Trong bài hướng dẫn này, chúng ta sẽ học cách đảo trạng thái LED mỗi lần nút được nhấn.
Bài hướng dẫn gồm hai phần chính:
- Nút nhấn bật/tắt LED mà không có debounce.
- Nút nhấn bật/tắt LED có debounce.
Phần cứng cần chuẩn bị
| 1 | × | Arduino Uno R3 | ||
| 1 | × | USB 2.0 cable type A/B (for USB-A PC) | ||
| 1 | × | USB 2.0 cable type C/B (for USB-C PC) | ||
| 1 | × | breadboard-mount Button with Cap | ||
| 1 | × | breadboard-mount Button Kit | ||
| 1 | × | Panel-mount Push Button | ||
| 1 | × | mô-đun nút nhấn | ||
| 1 | × | LED Kit | ||
| 1 | × | LED (red) | ||
| 1 | × | LED Module | ||
| 1 | × | 220Ω Resistor | ||
| 1 | × | breadboard | ||
| 1 | × | dây jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Breadboard Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Enclosure for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO |
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về LED và nút nhấn
Nếu bạn chưa biết về LED và nút nhấn (bố trí các chân, cách chúng hoạt động, cách lập trình ...), hãy tìm hiểu chúng trong các bài hướng dẫn sau đây:
Sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image
Mã Arduino - Nút nhấn bật/tắt LED mà không khử nhiễu
Hướng dẫn từng bước
- Kết nối Arduino với PC bằng cáp USB
- Mở Arduino IDE, chọn board và cổng đúng
- Sao chép mã ở trên và mở bằng Arduino IDE
- Nhấp vào nút Tải lên trên Arduino IDE để tải mã lên Arduino
- Giữ nút trong vài giây, rồi thả ra
- Quan sát sự thay đổi trạng thái của đèn LED
Giải thích mã nguồn
Bạn có thể tìm lời giải thích trong các dòng chú thích của mã Arduino ở trên.
Trong mã, ledState = !ledState tương đương với đoạn mã sau:
※ Lưu ý:
Trong thực tế, mã ở trên đôi khi không hoạt động đúng. Để nó luôn hoạt động đúng, chúng ta cần Arduino - Nút nhấn - Khử rung. Việc debounce cho nút không dễ đối với người mới bắt đầu. May mắn thay, nhờ thư viện ezButton, chúng ta có thể làm điều đó một cách dễ dàng.
Mã Arduino - Nút nhấn bật/tắt LED với chống nhiễu
Tại sao chúng ta cần debounce? ⇒ xem Arduino - Nút nhấn - Khử rung
Hướng dẫn từng bước
- Cài đặt thư viện ezButton. Xem Hướng dẫn
- Sao chép mã ở trên và mở bằng Arduino IDE
- Nhấn nút Tải lên trên Arduino IDE để tải mã lên Arduino
- Nhấn nút một vài lần
- Xem sự thay đổi trạng thái của LED
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.