esp8266 (本质也是arduino)+blinker 实现一键配网点灯

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
在这里插入图片描述

  1. 输入wifi 密码,点击开始配置,esp将自动完成配置
    在这里插入图片描述
    4.配网成功展示
    在这里插入图片描述

连线

led是接在D4 对应到代码是2
在这里插入图片描述

使用blinker就可以手机上操作灯泡在这里插入图片描述

  • 5
    点赞
  • 69
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
首先,ESP8266是一款具有Wi-Fi功能的微控制器模块,它可以与Arduino UNO R3进行通信和控制。而光照传感器用于检测环境的光照强度。下面我将用华而不实的例子来说明如何使用ESP8266Arduino UNO R3进行光照传感器的闪烁灯实验。 首先,我们需要连接ESP8266Arduino UNO R3。将ESP8266模块的VCC引脚连接到Arduino UNO R3的5V引脚,将GND引脚连接到Arduino UNO R3的GND引脚,将ESP8266的RX引脚连接到Arduino UNO R3的TX引脚,将ESP8266的TX引脚连接到Arduino UNO R3的RX引脚。 接下来,我们需要连接光照传感器。将光照传感器的VCC引脚连接到Arduino UNO R3的5V引脚,将GND引脚连接到Arduino UNO R3的GND引脚,将光照传感器的信号引脚连接到Arduino UNO R3的A0引脚。 接下来,我们需要编写Arduino代码。首先,导入ESP8266WiFi和SoftwareSerial库。然后,在setup函数中初始化串口通信和Wi-Fi连接。在loop函数中,读取光照传感器的数值,并根据数值控制ESP8266的GPIO引脚输出高低电平,以实现闪烁灯效果。 最后,将代码上传到Arduino UNO R3中,并将ESP8266连接到Wi-Fi网络。当光照传感器检测到较强的光照时,闪烁灯会快速闪烁;当光照传感器检测到较弱的光照时,闪烁灯会慢速闪烁。 总结来说,使用ESP8266Arduino UNO R3和光照传感器可以实现一个具有可调节闪烁频率的光照传感器闪烁灯实验。这个实验可以用于对光照强度的实时监测和视觉提醒。相信这个简单的实验可以帮助大家更好地理解ESP8266Arduino UNO R3的应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生活热爱就好

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值