Lập trình esp8266 bật tắt led bằng nút nhấn (lưu trạng thái).
Chuẩn bị phần cứng:
- 1 x ESP8266 V12 hoặc V12E đã tích hợp sẵn mạch nạp ( Trong ví bài viết này tôi sử dụng ESP8266-V12E)
- 1 breadboard.
- 1 led.
- 1 điện trở 220 Ohm.
- 1 nút nhấn 4 chân.
Lắp mạch:
- Chân ( + ) của led được nối chân D0 ( tương ứng với chân số GPIO16 )
- Chân ( -- ) của led được nối chân GND của ESP.
- Chân D3 ( chân GPIO0 ) được nối với nút nhấn như hình dưới.
Lập trình:
//khai báo biến
int nutnhan = 0; // định nghĩa chân số GIPO0 là button ( D3 )
int led = 16,t=0; // khai báo led và biến, 16 ( GIPO16) (tuong ung D0)
int status1;// biến lưu các trạng thái nút nhấn
// viết hàm chống dội
boolean chong_doi()// int char float ngoại trừ void
{
int sta =!digitalRead(nutnhan); // đọc trạng thái nút nhấn
return sta;// khi co nhan nut la true
}
// khởi tạo
void setup()
{
Serial.begin(9600);
pinMode(nutnhan,INPUT);
digitalWrite(nutnhan, HIGH);
pinMode(led,OUTPUT);
}
void loop() // vong lap
{
int buttonState = digitalRead(nutnhan);
//Serial.println(buttonState);
status1 = chong_doi();
if(status1==true)
{
{
t=!t;// đảo trạng thái
}
while(status1==true){status1=chong_doi();}
}
if(t==1)
{
digitalWrite(led,HIGH);
}
else
{
digitalWrite(led,LOW);
}
Serial.println(t);
}
Hình ảnh thực tế:
Chúc các bạn thành công!!!!
Bình luận(2)