当前位置:   article > 正文

blinker点灯开关组件_blinker_log

blinker_log

一. 简介

前面我们说了,用于通过blinker来实现点亮开发板上面的小灯,但是用的开关组件只是按一下打开灯或者再按一下熄灭灯,从app上看不清到底是开灯的还是关灯着,所以这次说一下,按键后反馈组件的状态

二. 组件简绍

在编辑模式下,点击按键进入编辑组件页面,可以看到 按键类型 有三种:普通按键、开关按键、自定义按键
在这里插入图片描述

普通按键
每次按下发送的指令为

{"btn-abc":"tap"}
  • 1

开关按键
按键本身会保存开关状态,默认为off,按下时会发送

{"btn-abc":"on"}
  • 1

保存的状态为on时,按下会发送

{"btn-abc":"off"}
  • 1

设备端可以发送指令改变当前按键的开关状态

三. 代码部分

define BLINKER_WIFI
 
#include <Blinker.h>
 
char auth[] = "Your Device Secret Key";
char ssid[] = "Your WiFi network SSID or name";
char pswd[] = "Your WiFi network WPA password or WEP key";

// 新建组件对象
BlinkerButton Button1("btn-abc");
 
// 按下按键即会执行该函数
void button1_callback(const String & state) {
    BLINKER_LOG("get button state: ", state);
    if (state=="on") {
        digitalWrite(LED_BUILTIN, LOW);
        // 反馈开关状态
        Button1.print("on");
    } else if(state=="off"){
        digitalWrite(LED_BUILTIN, HIGH);
        // 反馈开关状态
        Button1.print("off");
    }
}
 
void setup() {
    // 初始化串口
    Serial.begin(115200);
    // 初始化有LED的IO
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH);
    // 初始化blinker
    Blinker.begin(auth, ssid, pswd);
    Button1.attach(button1_callback);
}
 
void loop() {
    Blinker.run();
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/514073
推荐阅读
相关标签
  

闽ICP备14008679号