点灯科技
点灯是一套专业且易用物联网解决方案,提供了服务器、应用、设备端sdk支持。 基于高性能异步框架开发的服务器端可以承载大量设备连接,让设备所有者方便的进行设备管理;简单便捷的应用配合多设备支持的sdk,可以让开发者在3分钟内实现设备的接入。 点灯服务有三个版本,社区版开源且免费,让大家可以体验到点灯方案的特点和优势;云服务版提供更多增值服务与功能,且有效降低客户的项目实施成本,让客户更快的进行物联网升级;商业版可进行独立部署,可以满足客户更多样的需求;
1、首先去下载一个点灯科技的app
2、下载点灯封装的依赖包
可能需要墙才可以GitHub - blinker-iot/blinker-library: An IoT Solution,Blinker library for embedded hardware. Works with Arduino, ESP8266, ESP32.直接把zip下载到本地,然后解压得到一个文件夹,注意查询符合自己的版本
3、接下来要添加依赖文件
4、现在可以开始点灯了,并且使用app远程控制LED灯,代码里面注释很清楚
// #include "WiFiUser.h"
#define BLINKER_MIOT_LIGHT
#define BLINKER_WIFI
#include <Blinker.h>
#define RedLed 13 // esp32开发版的引脚号 要对照开发板引脚图 GPIO来
#define GreeLed 14
#define BlueLed 15
int isWifi = 1;
int isOk = 0;
BlinkerButton Button1("btn1"); //这里需要根据自己在BLINKER里面设置的名字进行更改
void setup() {
// 初始化串口
Serial.begin(115200);
// rgb红色 定义输出引脚
pinMode(RedLed, OUTPUT);
// rgb绿色 定义输出引脚
pinMode(GreeLed, OUTPUT);
// rgb蓝色 定义输出引脚
pinMode(BlueLed, OUTPUT);
// 初始LED关闭
digitalWrite(RedLed, LOW);
digitalWrite(GreeLed, LOW);
digitalWrite(BlueLed, LOW);
initBlinker();
}
// the loop function runs over and over again forever
void loop() {
if (isOk == 1) {
RedLedFun();
GreeLedFun();
BuleLedFun();
}
// 一直循环点灯科技的东西
Blinker.run();
}
void RedLedFun() {
digitalWrite(RedLed, 1);
delay(500);
digitalWrite(RedLed, 0);
}
void GreeLedFun() {
digitalWrite(GreeLed, 1);
delay(500);
digitalWrite(GreeLed, 0);
}
void BuleLedFun() {
digitalWrite(BlueLed, 1);
delay(500);
digitalWrite(BlueLed, 0);
}
void initBlinker() {
//pinMode(LED_BUILTIN, OUTPUT);
// pinMode(Temp1, OUTPUT);
// digitalWrite(Temp1, HIGH); //初始化,由于继电器是低电平触发。所以刚开始设为高电平
//digitalWrite(LED_BUILTIN, HIGH);
BLINKER_DEBUG.stream(Serial);
// String ssid = WiFi.SSID();
// const char* ssid_char = ssid.c_str();
// String psk = WiFi.psk();
// const char* psk_char = psk.c_str();
// 设备秘钥 WIFI账号 密码
Blinker.begin("c14dba82***", "AISINFO-607", "aisinfo607");
Serial.print("要链接的wifi账号:");
// Serial.println(ssid_char);
Serial.print("wifi密码:");
// Serial.println(psk_char);
// 给按钮绑定一个事件,我点击按钮,需要esp32干什么
Button1.attach(button1_callback);
// Button2.attach(button2_callback);
// Blinker.attachData(dataRead);
// Number1.print(50);
// Button3.attach(button3_callback);
}
void button1_callback(const String& state) {
BLINKER_LOG("get button state: ", state);
Blinker.vibrate();
if (state == "on" && isWifi == 1) {
isOk = 1;
// 给app反馈开关状态
Button1.print("no");
// 给app按钮变成绿色
Button1.color("#00cc00");
} else if (state == "off" && isWifi == 1) {
isOk = 0;
Button1.print("off");
// 给app按钮变灰色
Button1.color("#00EE00");
}
}
// void initWifi() {
// // wifiManager.resetSettings();
// // 自动连接WiFi。以下语句的参数是连接ESP32时的WiFi名称
// wifiManager.autoConnect("33的热水壶");
// // 如果您希望该WiFi添加密码,可以使用以下语句:
// // wifiManager.autoConnect("AutoConnectAP", "12345678");
// // 以上语句中的12345678是连接AutoConnectAP的密码
// // WiFi连接成功后将通过串口监视器输出连接成功信息
// Serial.println("");
// Serial.print("ESP32 Connected to ");
// Serial.println(WiFi.SSID()); // WiFi名称
// Serial.print("IP address:\t");
// Serial.println(WiFi.localIP()); // IP
// }
5、打开点灯科技app,添加设备,然后会有一个秘钥,代码里面会用到。现在可以看到esp32已经在线,说明已经和点灯科技通讯,然后添加按钮可以去点灯科技查看教程,怎么使用都文档。
ESP32-远程控制LED灯