void button1_callback(const String & state) { BLINKER_LOG("get button state: ", state); if (state=="on") { digitalWrite(D8, HIGH); Button1.print("on"); } else if(state=="off"){ digitalWrite(D8, LOW); Button1.print("off"); } }
时间: 2024-04-24 11:21:10 浏览: 192
这是一个名为button1_callback的函数,它接受一个名为state的String类型参数。在函数内部,它首先使用BLINKER_LOG函数记录按钮的状态。然后,它通过比较state变量的值来判断按钮的状态是否为"on"或"off"。如果状态是"on",则将D8引脚设置为高电平,并将Button1的状态设置为"on"。如果状态是"off",则将D8引脚设置为低电平,并将Button1的状态设置为"off"。
相关问题
#include <Blinker.h> char auth[] = "Your_AuthKey"; char ssid[] = "Your_SSID"; char pswd[] = "Your_PASSWORD"; BlinkerButton btn1("btn-abc"); void button1_callback(const String & state) { Serial.println("button1 state: " + state); digitalWrite(LED_BUILTIN, state.toInt()); } void setup() { Serial.begin(115200); pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); Blinker.begin(auth, ssid, pswd); btn1.attach(button1_callback); } void loop() { Blinker.run(); }
这是一个使用Blinker库控制ESP8266的示例代码,其中定义了一个名为btn1的按钮,当按钮状态改变时会调用button1_callback函数,函数会打印按钮状态并控制板子上的LED灯亮灭。在setup函数中,首先开启串口通信并初始化LED灯状态,然后调用Blinker.begin函数连接WiFi并注册设备,最后附加按钮回调函数。在loop函数中,调用Blinker.run函数以接收来自Blinker云端的指令。
阅读全文