CODE THỬ NGHIỆM.
// set pin numbers
const int buttonPin = 4; // the number of the pushbutton pin
const int ledPin = 5; // the number of the LED pin
// variable for storing the pushbutton status
int buttonState = 0;
void setup() {
// initialize the pushbutton pin as an input
pinMode(buttonPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the state of the pushbutton value
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH
if (buttonState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
} else {
// turn LED off
digitalWrite(ledPin, LOW);
}
}
How the Code Works (Cách hoạt động của mã)
const int buttonPin = 4; const int ledPin = 5;
Nút được kết nối với GPIO 4 và đèn LED được kết nối với GPIO 5. Khi sử dụng Arduino IDE với ESP8266, 4 tương ứng với GPIO 4 và 5 tương ứng với GPIO 5.
Tiếp theo, bạn tạo một biến để giữ trạng thái nút. Theo mặc định, nó là 0 (không được nhấn).
int buttonState = 0;
Trong Setup (), bạn khởi tạo nút dưới dạng ĐẦU VÀO và đèn LED dưới dạng ĐẦU RA. Đối với điều đó, bạn sử dụng hàm pinMode () chấp nhận chân mà bạn đang đề cập đến và chế độ: INPUT hoặc OUTPUT.
pinMode(buttonPin, INPUT); pinMode(ledPin, OUTPUT);
Trong Loop () là nơi bạn đọc trạng thái của nút và đặt đèn LED cho phù hợp.
Trong dòng tiếp theo, bạn đọc trạng thái nút và lưu nó trong biến buttonState. Như chúng ta đã thấy trước đây, bạn sử dụng hàm digitalRead ().
buttonState = digitalRead(buttonPin);
Câu lệnh if sau đây, kiểm tra xem trạng thái nút có CAO hay không. Nếu đúng như vậy, nó sẽ bật đèn LED bằng cách sử dụng hàm digitalWrite () chấp nhận làm đối số là ledPin và trạng thái CAO.
if (buttonState == HIGH) { digitalWrite(ledPin, HIGH); }
Nếu trạng thái nút không CAO, bạn tắt đèn LED. Chỉ cần đặt LOW làm đối số thứ hai trong hàm digitalWrite ().
else { digitalWrite(ledPin, LOW); }