打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Arduino物联网开发实战1 --控制开关灯

下面是我们的第一个blinker程序,请不要着急编译上传,因为我们还要对其进行简单的配置。

连接配置

在程序中找到名为auth、ssid和pswd的变量,

auth中填入在app中获取到的Secret Key,

ssid和pswd中填入你要连接的WiFi名和密码,如:

char auth[] = 'abcdefghijkl'; //上一步中在app中获取到的Secret Keychar ssid[] = 'blinkerssid'; //你的WiFi热点名称char pswd[] = '123456789'; //你的WiFi密码

然后编译并上传以下程序:

#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); digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); Blinker.vibrate();} 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();}

在APP中点击设备图标,即可进入该设备控制界面,点击按钮就可以控制Arduino上的LED灯开关。

程序解析

以下对blinker设备程序解析:

选择连接方式

blinker支持多种连接方式,

#define BLINKER_WIFI

用于指定设备接入方式,你还可以使用 BLINKER_BLE,不同的接入方式对应的Blinker初始化函数也不同:

蓝牙接入

#define BLINKER_BLE #include <Blinker.h>  void setup() {  Blinker.begin(); }

WiFi接入

#define BLINKER_WIFI #include <Blinker.h> void setup() { Blinker.begin(auth, ssid, pswd); }

新建组件并绑定回调函数

新建组件

blinker app上每个UI组件在设备端都可以创建一个对应的对象。创建方式如下:

组件类型 对象名(键名)

app中组件对应的键名可以在界面编辑模式下看到。

使用组件的数据键名创建对应的对象,这个对象就与blinker app界面上的UI组件进行了绑定。

blinker库定义了多种组件类型,对应app上UI组件类型,如

BlinkerSlider 滑块组件

BlinkerRGB 颜色拾取组件

BlinkerNumber 数值组件

BlinkerText 文本组件

如下,创建了按键组件和数值组件对应的对象:

BlinkerButton Button1('btn-abc');BlinkerNumber Number1('num-abc');

回调函数

void button1_callback(const String & state) { BLINKER_LOG('get button state: ', state); digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));}

绑定回调函数

Button1.attach(button1_callback);

当app中组件触发并发送到设备端时将触发该组件注册的回调函数

Blinker运行时

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

Blinker.run()语句负责处理Blinker收到的数据,每次运行都会将设备收到的数据进行一次解析。

在使用WiFi接入时,该语句也负责保持网络连接

开启调试信息

你可以在setup中添加以下语句,以查看调试信息

BLINKER_DEBUG.stream(Serial);

用于指定调试信息输出的串口,设备开发时调试使用,项目或产品成型后,可以删除。

如果需要查看更多内部信息,可以添加

BLINKER_DEBUG.debugAll();
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
远程开关机的方法(教你10元用esp8266 DIY远程开机棒)
吸顶灯接入物联网(基于Blinker与wifi开发板)
VsCode设置ESP32工具链+刨根问底点灯
Arduino教程系列:第6讲,wifi
GCC 内建函数 __builtin_expect实现
Makefile中,选项-W 、-Wall、 -w、-fno-builtin、-On的作用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服