单片机学习小组
直播中

晴兮晴兮

11年用户 566经验值
私信 关注

请问一下esp8266是怎样去获取传感器状态的

请问一下esp8266是怎样去获取传感器状态的?有哪些基本步骤呢?

回帖(1)

李咏祥

2022-2-22 11:50:48
#include
#include
#include
#define led LED_BUILTIN #esp8266板子上面的LED灯
ESP8266WiFiMulti wifimulti; // 建立wifimulti对象
ESP8266WebServer esp8266_server(80); // 建立网络服务器对象用于响应http请求监听80端口
void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600); // 启动串口
  pinMode(led, OUTPUT); // 开启led对应的针脚为输出状态
  wifimulti.addAP("wifi1, "123456"); // 建立三个wifi 会选择信号最强的连接
  wifimulti.addAP("wifi2", "123456");
  wifimulti.addAP("wifi3", "123456");
  while(wifimulti.run() != WL_CONNECTED) // 连接成功run()返回WL_CONNECTED
  {
    delay(200);
    Serial.print(".");
  }

  Serial.println("");
  Serial.print("WiFi start  name ");
  Serial.print(WiFi.SSID()); // 打印出wifi名称
  Serial.print("tIPt");
  Serial.println(WiFi.localIP()); // 打印出当前连接wifi 的 ip

  esp8266_server.begin(); // 启动网站服务
  esp8266_server.on("/", handleRoot); // 建立根目录 页面
  esp8266_server.onNotFound(handleNotFound); // 建立当前网页访问错误的页面
  Serial.println("ESP8266_SERVER STARTED");
}

void loop() {
  // put your main code here, to run repeatedly:
  esp8266_server.handleClient(); // 处理请求
}
void handleRoot() // 根目录内容通过send发送
{
  String displayPin;
  if(!digitalRead(led))
  {
    displayPin = "led -- HIGH";
  }else{
    displayPin = "led -- LOW";
  }
  esp8266_server.send(200, "text/plain", displayPin);
}
void handleNotFound() // 404页面内容
{
  esp8266_server.send(404, "text/plain", "404:Not Found");
}

看到串口出现下面的文字就表示启动成功了,就可以打开浏览器输入wifi给你分配的局域网IP进去网页,
每个人分配到的IP都有可能是不同的。你的IP是多少就输入多少

当led小灯处于点亮状态就显示HIGH
举报

更多回帖

发帖
×
20
完善资料,
赚取积分