2567|1

98

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

物联网智能灯 [复制链接]

本帖最后由 Ansersion 于 2019-6-22 11:42 编辑

物联网智能灯

一、简介:

物理网智能灯可以通过因特网实时同步数据到用户的手机终端,用户也可以通过手机终端远程操控智能灯。

 

二、系统描述:

智能灯主要由3部分组成:

  1. GD32E231作为主控,从而可以控制外设;
  2. ESP8266作为Wifi通信模块,负责透传主控和BcServer服务器之间的数据,和GD32E231通过串口实现数据交互;
  3. LED灯,也就是外设,由GD32E231使用GPIO控制。

智能灯和安卓APP使用Beecom协议(简称BC协议)通过BcServer服务器相互传输数据。

 

三、GD32E231控制逻辑描述:

GD32E231使用状态机实现5种状态,说明如下:

  1. CONNECT

使用BC协议的CONNECT命令向BcServer服务器发起连接。如果成功则表示已经对接上BcServer服务器,然后进入“REPORT校验码”状态;否则等待一段时间,继续发起CONNECT命令。

  1. REPORT校验码

使用BC协议的REPORT命令向BcServer服务器发送信号表校验码。如果成功则表示BcServer服务器已经保存了该设备的信号表,然后进入“REPORT所有信号值”状态;否则进入“REPORT信号表”状态。

  1. REPORT信号表

使用BC协议的REPORT命令向BcServer服务器发送设备信号表。如果成功则表示BcServer服务器已经接收并保存了该设备信号表,然后进入“REPORT所有信号值”状态;否则回到“CONNECT状态”。

  1. REPORT所有信号值

使用BC协议的REPORT命令向BcServer服务器发送所有信号值(即LED等状态)。如果成功则表示BcServer服务器已经收到并同步了该设备信号值,然后进入“工作循环”状态;否则回到“CONNECT状态”。

  1. 工作循环

“工作循环”状态下,GD32E231一直保持空闲,除非接收到以下事件:

  1. 按键触发外部中断事件:

该事件触发后,GD32E231向BcServer服务器上传最新LED信号值。

  1. 接收到网络数据事件(即串口中断)

该事件触发后,GD32E231将解析网络数据,并相应更新本地参数或者进行相关操作,同时将命令发送超时时间清零。

  1. 命令发送超时事件

该事件触发后,表示GD32E231发送的网络数据包无响应,则回到“CONNECT状态”。

  1. 保活超时事件

该事件触发后,GD32E231必须向BcServer服务器发送BC协议的PING命令,从而维持智能灯与BcServer服务器之间的链接。

 

四、演示视频(推荐切换“高清”观看):


 

五、源码与文档:

基于GD32E231的物联网智能灯.docx (1.47 MB, 下载次数: 13)



bc_light_keil_eeworld_gd32e231.zip (1.19 MB, 下载次数: 13)

 

此帖出自GD32 MCU论坛

最新回复

谢谢分享   详情 回复 发表于 2021-4-19 21:40
点赞 关注(1)
 

回复
举报

661

帖子

0

TA的资源

纯净的硅(初级)

沙发
 

谢谢分享

此帖出自GD32 MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表