- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大黄蜂—ble-mcu通信协议 - 机智云
中控之设备管理API接口分析
机智云
编制人 崔栗峰 审核人 批准人 产品名称 产品型号 文档编号 会签日期 版本
GizWits
修改记录
修改时间人.0.1
目 录
目录 3
一、结构体 4
1、子设备属性结构体 4
2、 设备类型列表 4
3、 设备信息列表 定义结构体的全局变量 4
二、设备管理函数 5
1、 DMSetMode() 进入配置模式 5
2、 DMAddDevice(uint8_t *data,uint8_t len,devAttr_t *devAttr) 设备添加 5
3、 DMDelDevice(devAttr_t *devAttr) 设备删除 5
4、 DMReportDeviceList() 设备列表变更 6
5、 DMRequestDeviceList() 设备列表查询 6
6、 DMDeviceIsOnline(uint8_t *data,uint8_t len) 上下线通知 7
一、结构体
1、子设备属性结构体
devAttr_t
{
Uint8_t isUsed :1; //是否有效
Uint8_t isOnLine :1; //是否在线
Uint8_t wirelessType:4; //通信类型
Uint8_t Reserve :2;
Uint8_t devType[32]; //就是PK
Uint8_t mac[6]; //mac地址
Uint32_t devNum; //subID
Uint32_t group; //所在组别
Uint32_t lastReportTime; //上次上报时间
}
设备类型列表
devTypeList
{
Uint8_t productKey[devType][32];
}
设备信息列表 定义结构体的全局变量
devInfoList
{
devAttr_t devInfo[32];
}
为每一个子设备都创建一个属性实例devInfo[ ] 。
中控和子设备之间采用UDP模拟zigbee通讯
二、设备管理函数
DMSetMode() 进入配置模式
设备列表初始化等。
无参数。
DMAddDevice(uint8_t *data,uint8_t len,devAttr_t *devAttr) 设备添加
输出参数:devAttr_t *devAttr 将添加进来的子设备初始化,主要是PK、SDID
输入参数:子设备向中控发出的协议数据 uint8_t *data 和数据长度len。
流程:
app向中控发添加子设备命令(0x0B),中控处于接收状态(设定一定时间,超过时间没接收,则向app发连接超时),
中控向子设备发一个东西?
子设备向中控发AA+PK;中控收到 AA+PK后,将PK保存在结构体中,并给sid赋值;
中控向GAgent发P0命令0x0F,告诉app子设备列表发生变化:
Gagent收到子设备列表发生变化的信号后,返回ack。
备注:
①子设备发给中控的数据只是PK,中控根据收到的PK,将属性结构体初始化。Mac地址怎么初始化呢?
②属性结构体在系统初始化时,32个数组都需要初始化为0.
③可以将子设备SDID变量devNum,作为子设备列表中的数组参数。即devInfoList.devInfo[devNum]
④命令为P0命令,0x0B。
⑤ 子设备层目前先不考虑。
⑥命令是app传给中控的,中控根据不同的命令来做不同的操作。添加子设备是让中控来做。
⑦中控向GAgent发0xf,告诉app,子设备列表发生变化。需要定一个结构体,来存放向中控发的信息。
结构体包含(协议头,action命令,设备种类数(2B),PK(第一种设备),第一种设备个数(2B),第一个设备SDID(4B),设备是否在线(1B),校验sum(1B))。
如果设备种类不唯一:
⑧ 在添加子设备后,还需要将相同PK的子设备个数统计出来,赋值给结构体 ?。
DMDelDevice(devAttr_t *devAttr) 设备删除
输入参数:devAttr_t *devAttr 。
备注:
将是否有效位直接置0,在对子设备操作前,先判断该位是否为1。然后再删除其他属性信息。
①如果仅有一个子设备,那么删除SDID、PK。
②如果有不止一个子设备,相同PK的子设备多于1个,
您可能关注的文档
- 放电等离子快速烧结纳米材料 - 无机材料学报.pdf
- sm对feco基快淬薄带相组成及非晶形成能力的影响.pdf
- logistic 分布预测林分直径结构的研究 - 林业科学研究.pdf
- 现浇混凝土框架结构设计中的几个问题 - 电力建设.pdf
- 谈语文课程标准修订.ppt
- 紫外光与大气气溶胶典型氧化物对cos氧化反应性能研究 - 中国科学.pdf
- 硕士研究生入学考试考试大纲 - 首都经济贸易大学.pdf
- 北京市工伤辅助器具配置项目及费用限额标准.doc
- 九二一集集大地震后结构物新旧耐震法规浅谈.pdf
- 刚球与有限拉伸衬底的黏附接触 - science china press.pdf
- 多名经济学家表示:中国明年加息可能性较大.doc
- 混凝土弹性模量测定仪弹性模量模量测定仪.pdf
- 粉煤灰空心微珠沸石化制备复合空心球 - 上海有机化学研究所.pdf
- 荷载接触面形状对沥青路面力学响应的影响 - 重庆交通大学.pdf
- 河流相储层油藏无因次采液指数计算的典型通用公式 - 断块油气田.pdf
- 高强轻骨料混凝土在桥梁工程应用中的一些问题 - 清华大学混凝土结构 .pdf
- 种新的分布式电力系统状态估计算法 - 电力系统保护与控制.pdf
- 友邦强积金优选计划2016年12月发行主要说明书附件三.pdf
- 基于竞争威布尔模型的加工中心可靠性评估1 reliability evaluation of .pdf
- 红外焦平面阵列图像的伪彩色编码和处理 - read.pdf
最近下载
- 《解析几何》教案--吕林根,许子道.pdf
- 美国加州桥梁抗震caltrans seismic design criteria vlysis.pdf VIP
- 2025云南省临沧市市级单位公开遴选(选调)工作71人笔试参考题库附答案解析.docx VIP
- HSE保障措施优化及实施方案研究.docx VIP
- 2025甘肃省公路交通建设集团武仙公路收费运营人员招聘61人笔试模拟试题及答案解析.docx VIP
- 2025年秋新鲁科版英语四年级上册全册课件.pptx
- 颚式破碎机技术参数.docx VIP
- 2024河南资本集团“方舟”第三批招聘41人笔试参考题库附带答案详解.pdf
- 《时尚配饰设计》课件.ppt VIP
- 高边坡专家论证PPT汇报材料(中建).ppt VIP
文档评论(0)