/**
Trường Công nghệ Thông tin và Truyền thông, Đại học Bách Khoa Hà Nội
Website: https://soict.hust.edu.vn
Học phần: Hệ nhúng
Mô tả bài thực hành: Bật/tắt đèn led theo trạng thái bấm/nhả của nút
Các công cụ cần thiết:
- ESP32
- Bo mạch cắm breadboard
- 1 nút bấm
- 1 đèn led
- 1 điện trở từ 220 ~ 1K Ohm
Sử dụng:
- Bấm nút và giữ, quan sát đèn led
**/
#define MY_BUTTON 25 // Vị trí chân GPIO của ESP32 được nối với nút bấm
#define MY_LED 5 // Vị trí chân GPIO của ESP32 được nối với đèn LED
//-------------------------------------------------------------------
// Khởi tạo
//-------------------------------------------------------------------
void setup() {
// Chế độ hoạt động của chân Pin nối với Led: Output
pinMode(MY_LED, OUTPUT);
// Chế độ hoạt động của chân Pin nối với nút bấm: Input với điện trở kêo lên có sẵn trong MCU
// Khi nhả: mạch điện ở phía nút bấm hở, nhưng điện trở kéo lên bên trong sẽ bảo đám mạch điện vẫn kín, và kéo về logic 1
// Khi bấm: mạch điện ở phía nút bấm thông, tạo điện áp 0V tương ứng với logic 0
pinMode(MY_BUTTON, INPUT_PULLUP);
}
/// Trạng thái nút bấm
bool btn;
//-------------------------------------------------------------------
// Thân vòng lặp vĩnh viễn
//-------------------------------------------------------------------
void loop() {
// Đọc trạng thái nút bấm
btn = digitalRead(MY_BUTTON);
// Hiển thị led tương ứng
digitalWrite(MY_LED, btn);
}