求大佬给我的代码加一个自动配网-Arduino中文社区 - Powered by Discuz! Archiver

3300299472 发表于 2020-11-30 10:06

求大佬给我的代码加一个自动配网

#define BLINKER_WIFI
#define BLINKER_MIOT_OUTLET   //小爱同学

#include <Blinker.h>

char auth[] = "*******";
char ssid[] = "*******";
char pswd[] = "*******";
BlinkerButton Button1("btn-on");   //定义按钮数据
BlinkerButton Button2("btn-off");
bool oState = false;
int counter = 0;
void miotPowerState(const String & state)
{
   BLINKER_LOG("need set power state: ", state);

   if (state == BLINKER_CMD_ON) {   //小爱同学控制开命令
       digitalWrite(0, LOW);

       BlinkerMIOT.powerState("on");

       BlinkerMIOT.print();

       oState = true;
   }
   else if (state == BLINKER_CMD_OFF) {   //小爱同学控制关命令
       digitalWrite(0,HIGH);

       BlinkerMIOT.powerState("off");

       BlinkerMIOT.print();

       oState = false;
   }
}

void miotQuery(int32_t queryCode)      //小爱同学控制
{
   BLINKER_LOG("MIOT Query codes: ", queryCode);

   switch (queryCode)
   {
       case BLINKER_CMD_QUERY_ALL_NUMBER :
         BLINKER_LOG("MIOT Query All");
         BlinkerMIOT.powerState(oState ? "on" : "off");
         BlinkerMIOT.print();
         break;
       case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :
         BLINKER_LOG("MIOT Query Power State");
         BlinkerMIOT.powerState(oState ? "on" : "off");
         BlinkerMIOT.print();
         break;
       default :
         BlinkerMIOT.powerState(oState ? "on" : "off");
         BlinkerMIOT.print();
         break;
   }
}

void dataRead(const String & data)      // 如果未绑定的组件被触发,则会执行其中内容
{
   BLINKER_LOG("Blinker readString: ", data);

   Blinker.vibrate();
   
   uint32_t BlinkerTime = millis();
   
   Blinker.print("millis", BlinkerTime);
}

void button1_callback(const String & state)   //点灯app内控制按键触发
{
   
   digitalWrite(0,LOW);
   BLINKER_LOG("get button state:on", state);


}
void button2_callback(const String & state)   //点灯app内控制按键触发
{
   
   digitalWrite(0,HIGH);
   BLINKER_LOG("get button state:off", state);


}





void setup()
{
   Serial.begin(115200);
   BLINKER_DEBUG.stream(Serial);

   pinMode(0, OUTPUT);            //定义io口为输出
   digitalWrite(0, LOW);         //定义io默认为高电平

   Blinker.begin(auth, ssid, pswd);
   Blinker.attachData(dataRead);
   
   BlinkerMIOT.attachPowerState(miotPowerState);
   BlinkerMIOT.attachQuery(miotQuery);
   Button1.attach(button1_callback);
   Button2.attach(button2_callback);   
}

void loop()
{
   Blinker.run();
}

奈何col 发表于 2020-11-30 12:00

https://diandeng.tech/doc/dev-tool

2052957526 发表于 2020-12-5 15:48

给你一个最简单的方法,动3个地方就能实现。

1.代码第一行加上:
#define BLINKER_ESP_SMARTCONFIG

2.删除下面这两行
char ssid[] = "*******";
char pswd[] = "*******";

3.把
Blinker.begin(auth, ssid, pswd);
修改为
Blinker.begin(auth);

--------------------------------------------------------
@奈何col 顺便问大佬能不能给我账号加两个设备
页: [1]
查看完整版本: 求大佬给我的代码加一个自动配网