赞
踩
在编辑模式下,点击按键进入编辑组件页面,可以看到 按键类型 有两种:普通按键、开关按键
普通按键
每次按下发送的指令为
默认状态:
{“btn-abc”:“tap”}
开关按键
按键本身会保存开关状态,默认为off,按下时会发送
{“btn-abc”:“on”}
保存的状态为on时,按下会发送
{“btn-abc”:“off”}
设备端可以发送指令改变当前按键的开关状态
#define BLINKER_PRINT Serial #define BLINKER_WIFI #include <Blinker.h> #define LED1 4 #define LED2 5 // 新建组件对象 BlinkerButton Button1("btn-abc"); // 点灯APP中的组件键名 char auth[] = "8ab016772e62"; // Blinker秘钥 char ssid[] = "Aimore"; // 2.4G频段的WIFI名称 char pswd[] = "1357924680"; // 2.4G频段的WIFI密码 bool LED_state=0; // 定义一个全局布尔型变量来控制LED的状态 //LED函数 void LED_ON_OFF() { if(true == LED_state) { Button1.print("LED1 ON"); // 点灯app中Monitor打印LED状态日志 } else { Button1.print("LED2 ON"); } digitalWrite(LED1, LED_state); //LED1状态控制 digitalWrite(LED2, !LED_state); //LED2状态控制 LED_state = !LED_state; // 变换状态 } // 按下按键即会执行该函数 void button1_callback(const String & state) { LED_ON_OFF(); // 调用LED函数 } void setup() { Serial.begin(115200); // 初始化串口通信,波特率为115200 //Blinker Monitor窗口打印 #if defined(BLINKER_PRINT) BLINKER_DEBUG.stream(BLINKER_PRINT); //将debug的输出流设置为串口 #endif pinMode(LED1, OUTPUT); // 设置led引脚为输出模式 pinMode(LED2, OUTPUT); digitalWrite(LED1, LOW); digitalWrite(LED2, LOW); //Blinker配置 Blinker.begin(auth, ssid, pswd); // 配置blinker Button1.attach(button1_callback); //注册按钮回调函数 } void loop() { Blinker.run(); }
APP监视窗口展示:
实际电路效果展示:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。