blinker使用开发手册:https://www.diandeng.tech/doc
使用步骤
1.在blinker手机应用上增加设备
安装完APP然后完成注册,按照如下图可以增加设备,并生成秘钥。此秘钥非常关键,后续要用于arduino代码中。
源码
#define BLINKER_WIFI
#define BLINKER_PRINT Serial
#define BLINKER_APCONFIG //启用热点 wifi一键配置功能
#define LED_BUILTIN 2 //esp8266 板子上的灯是 D4 ,此处必须这么设置,不然控制不到灯
#include <Blinker.h>
#include <ESP8266WiFi.h>
char auth[] = "2fa38771f67c";// blinker app提供的秘钥,用于mqtt协议远程控制用
//新建组件对象
BlinkerButton Button1("btn-abc");
BlinkerNumber Number1("num-abc");
int counter = 0;
// 按下按键即会执行该函数
void button1_callback(const String & state) {
BLINKER_LOG("get button state: ", state);
if (state == BLINKER_CMD_ON) {
digitalWrite(LED_BUILTIN, LOW);
BLINKER_LOG("Toggle on!");
// Button1.icon("icon_1");
// Button1.color("#ff66b3");
// Button1.text("Your button name or describe");
Button1.print("on");
}
else if (state == BLINKER_CMD_OFF) {
digitalWrite(LED_BUILTIN, HIGH);
BLINKER_LOG("Toggle off!");
//Button1.icon("icon_1");
Button1.color("#ff66b3");
// Button1.text("Your button name or describe");
// Button1.text("Your button name", "describe");
Button1.print("off");
}
}
// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)
{
BLINKER_LOG("Blinker readString: ", data);
counter++;
Number1.print(counter);
}
// 系统初始化函数, 系统入口
void setup()
{
Serial.begin(115200); //设置波特率
BLINKER_DEBUG.stream(Serial);
BLINKER_DEBUG.debugAll(); //开启调试模式,可以看到 blinker mqtt 协议相关交互信息
// 初始化有LED的IO
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW);
// 初始化blinker
Blinker.begin(auth);
Blinker.attachData(dataRead);//没有绑定的控件 函数注册
Button1.attach(button1_callback);
}
//让系统一直运行
void loop()
{
Blinker.run();
}
1.打开首页–》开发者
2.因为我们使用的ap配网模式,所以选择 apconfig
- 输入wifi 密码,点击开始配置,esp将自动完成配置
4.配网成功展示
连线
led是接在D4 对应到代码是2