电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
机智云连接ESP8266--远程控制点亮RGB灯
分 享
扫描二维码分享
机智云连接ESP8266--远程控制点亮RGB灯
esp8266
机智云
远程控制
cyyz古月
关注
发布时间: 2019-08-23
丨
阅读: 2215
概述 智能灯,是一个简单常见的智能产品,硬件电路简单,程序本身也不复杂;下面我们使用esp8266开发板和机智云云端,实现如何将一个传统的灯泡,改造成可以远程控制开关的智能灯。 1、准备工作 硬件: (1)esp8266开发板 (2)usb线 软件: (1)esp8266开发环境 eclipse IDE (2)Vmwave 虚拟机 linux 2、开始开发 2.1 注册开发者账号 机智云开发者账号,用于产品接入、设备管理、OTA服务、MCU开发等的功能使用。 注册链接:http://dev.gizwits.com/zh-cn/developer/ 2.2新建产品 注册完成后,登陆至机智云开发者中心后台后,点击开发者中心后台右上角的“创建新产品”菜单,在跳转页面新建一个名为“LED灯”的产品,选择“Wi-Fi/移动网络方案”方式接入,并完成产品创建。如下图: ![](https://cf05.ickimg.com/bbsimages/201908/fa7230176f0ae7e8b43b4bfaf4ad910b.png) 2.3 新建数据点 本次的项目“LED灯”,它需要实现的功能是远程开灯和关灯,那我们只需在云端建立一个“布尔值”的数据点即可完成这件事,如下图: ![](https://cf05.ickimg.com/bbsimages/201908/6b2b7af84d18514d790d207fef74d3dd.png) ![](https://cf05.ickimg.com/bbsimages/201908/0effc68cda6d7c305de16e300cfb3811.png) 添加数据点完成之后,点击“应用”,即可完成整个产品的数据点的新建工作。 2.4 云端生成代码 如图,左边菜单栏选择MCU开发,需要填写的Product Secret看下面 ![](https://cf05.ickimg.com/bbsimages/201908/3271124d6a422026ec15bc5d63f25a2b.png) 如图,左边菜单栏选择基本信息,点击显示完整密钥就行了 ![](https://cf05.ickimg.com/bbsimages/201908/ccd6431d774d37512bfcabc48f69a3c0.png) 下载代码包 ![](https://cf05.ickimg.com/bbsimages/201908/d727a3193cf7b4ae512405f1068dff08.png) 2.5 修改代码 在如下目录导入rgb的.c和.h文件 ![](https://cf05.ickimg.com/bbsimages/201908/305de39fa81f824ae426144d224c832d.png) 在主函数下初始化rgb灯 ![](https://cf05.ickimg.com/bbsimages/201908/a2d3c40f3d454e2bad80ad04ccf20ebf.png) 设置回调函数 smartconfig 按键配网,长按和短按RGB颜色反馈 ![](https://cf05.ickimg.com/bbsimages/201908/63a094206f2851e667a723892b20e65c.png) 修改app/Gizwits/gizwits_product.c 下的 gizwitsEventProcess 在之前设置的数据点(EVENT_)对应的case下添加代码 ![](https://cf05.ickimg.com/bbsimages/201908/f0bdd3a4d0dcf45d4030861e6b5fd110.png) 代码修改就完成了 还有一些细节如声明头文件就不发出来了,各位自行添加 2.6 编译 因为电脑使用的x86编译器生成的机器码是无法在esp8266上运行的,需要交叉编译工具链编译,所以要在虚拟机LINUX系统上进行 具体操作参考机智云的开发平台搭建,这里就不再赘述 http://docs.gizwits.com/zh-cn/deviceDev/WiFiSOC/GoKit3S%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91.html#GoKit3-S-%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E5%87%86%E5%A4%87 注意事项: 要使当前编译的环境变量生效,执行source /etc/environment,这样在当前命令行终端下该编辑的环境变量有效,换个命令行终端就无效了!当然更好的方式就是重启系统了 检查编译器 1、cd ~ 2、执行echo $PATH,查看当前环境变量,是否已经存在/opt/xtensa-lx106-elf/bin。 3、在命令行终端执行xtensa-lx106-elf-gcc -v,如可看到版本号,表示当前交叉编译器安装成功 如图表示编译完成 ![](https://cf05.ickimg.com/bbsimages/201908/ae9f5ae11192ef2c1be2f7cc8cac731f.png) 2.7 烧写固件 下载烧写软件 https://www.espressif.com/sites/default/files/tools/flash_download_tools_v3.6.4.rar esp_init_data_default.bin 0x3fc000 blank.bin 0x3fe000 boot_v1.6.bin 0x00000 user1.4096.new.6.bin 0x01000 开发板进入烧录方式 如图,开关拨到下载位置,开发板关闭 ![](https://cf05.ickimg.com/bbsimages/201908/7850a6d9b6e0b092ef9ad2b46b864343.png) 点击烧录软件的开始按钮后,给开发板上电 烧录完毕后记得将开关拨回运行 bin 文件的烧录地址看下面 ![](https://cf05.ickimg.com/bbsimages/201908/dc04e08bda0fe850ed2cf2b1a62ce94e.png) 2.8设备开始连接云 下载配网APP 到这个网址去下载app用来给esp8266配网,ios还是安卓看个人手机 https://download.gizwits.com/zh-cn/p/98/99 登陆开发者账号 软件需要登陆的,就先前创建的账号 设备配网 如下面几个图操作 ![](https://cf05.ickimg.com/bbsimages/201908/554dbe59d634961527a833d703c5c697.png) ![](https://cf05.ickimg.com/bbsimages/201908/47ea26954590b587ba0282ad50d8db2a.png) ![](https://cf05.ickimg.com/bbsimages/201908/a96b081d0dcb56536ec4d4497f0bef40.png) 开发板调至待连接状态:长按smartconfig键,直到rgb灯变绿 ![](https://cf05.ickimg.com/bbsimages/201908/0065299b796f522633857048d2fbe8bc.png) ![](https://cf05.ickimg.com/bbsimages/201908/32309d2f2e7572efb9d6545b8c1a3736.png) 设备已连接 ![](https://cf05.ickimg.com/bbsimages/201908/9f1b421bc58de045ad006d9879b836ba.png) 远程控制LED灯 ![](https://cf05.ickimg.com/bbsimages/201908/8904c79528e69c3581f292e3a65cccac.png) ![](https://cf05.ickimg.com/bbsimages/201908/54c60a4429d9a3d825c08ad3bb95fac9.png) 刚开始会遇到各种各样的问题,比如手机连不上开发板,检查rgb灯是否变绿,家里wifi是否正常,注意:5G wifi是无法连接上esp8266的,还有ununtu修改了环境变量后重启显示空白桌面的情况,要重新安装gnome等等需要读者去解决 至此,实现了手机远程控制LED灯
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
2
)
cyyz古月
关注
评论
(1)
登录后可评论,请
登录
或
注册
夕阳接你
203
天前...
机智云可以实现: 手机走GPRS流量控制已连接wifi的ESP8266吗?
0
回复
发布
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交