当前位置: 首页 > news >正文

外销网站建设中国搜索

外销网站建设,中国搜索,方一凡和磊儿做家教的网站,php导航网站本文主要描述了沁恒蓝牙mesh SDK的蓝牙数据收发接口#xff0c;以及应用层的回调函数解析以及模型传递 这里写目录标题 1. 数据收发接口1.1【发送数据】1.2 【数据接收】 2. 应用层模型分析 1. 数据收发接口 1.1【发送数据】 /*#xff08;1#xff09;接口1 */ /*接口一以及应用层的回调函数解析以及模型传递 这里写目录标题 1. 数据收发接口1.1【发送数据】1.2 【数据接收】 2. 应用层模型分析 1. 数据收发接口 1.1【发送数据】 /*1接口1 */ /*接口一沁恒厂家封装的函数接口*/ int vendor_model_srv_send(uint16_t addr, uint8_t *pData, uint16_t len); // 目的地址、数据、长度- vendor_message_srv_send_trans(); // 只发送无应答- adv_srv_trans_send();- bt_mesh_model_send(); // lib 库数据发送 /* 注意通过调用 vendor_model_srv_send 函数可以将数据发送给指定地址可以是组地址也可以是单播地址。 例程的应用层发送次数为 5 次如果实际使用环境较复杂可以提高发送次数保证传输成功率TTL 是默认是 3如果网络较大应把默认值根据需要转发的次数改大。 *//*2接口2 */ /*接口二蓝牙 mesh 协议栈 lib库接口*/ int bt_mesh_model_send( struct bt_mesh_model *model,struct bt_mesh_msg_ctx *ctx, struct net_buf_simple *msg,const struct bt_mesh_send_cb *cb, void *cb_data );1.2 【数据接收】 当模型收到数据首先进入初始化模型的操作码对应处理函数随后会在处理函数中调用回调函数上报给应用层 接收 MESH 数据 协议栈收到 MESH 数据后会调用 vendor_model_srv_rsp_handler 回调函数通知应用 层 以demo为例自定义模型以及初始化的过程为 以 adv_vendor工程为例 font colorblue ****/font/*1定义模型应用密钥和订阅地址----注意组地址的范围是0xc000-0xffff*/ uint16_t vnd_model_srv_keys[CONFIG_MESH_MOD_KEY_COUNT_DEF] {BLE_MESH_KEY_UNUSED}; /*一个模型一个key*/ uint16_t vnd_model_srv_groups[CONFIG_MESH_MOD_GROUP_COUNT_DEF] {BLE_MESH_ADDR_UNASSIGNED}; /*一个模型可被分到6个组中*//*(2)定义透传模型的op操作码*/ #define OP_VENDOR_MESSAGE_TRANSPARENT_CFM BLE_MESH_MODEL_OP_3(0xCB, CID_WCH) /*0xcb07d7*/ #define OP_VENDOR_MESSAGE_TRANSPARENT_WRT BLE_MESH_MODEL_OP_3(0xCC, CID_WCH) /*0xcc07d7*/ #define OP_VENDOR_MESSAGE_TRANSPARENT_ACK BLE_MESH_MODEL_OP_3(0xCD, CID_WCH) /*0xcd07d7*/ #define OP_VENDOR_MESSAGE_TRANSPARENT_IND BLE_MESH_MODEL_OP_3(0xCE, CID_WCH) #define OP_VENDOR_MESSAGE_TRANSPARENT_MSG BLE_MESH_MODEL_OP_3(0xCF, CID_WCH)/*(3)定义op对应的处理函数*/ const struct bt_mesh_model_op vnd_model_srv_op[] {{OP_VENDOR_MESSAGE_TRANSPARENT_MSG, 0, vendor_message_srv_trans}, /*长度为0表示数据的长度非固定值op操作码以及对应的处理函数*/{OP_VENDOR_MESSAGE_TRANSPARENT_WRT, 0, vendor_message_srv_write},{OP_VENDOR_MESSAGE_TRANSPARENT_ACK, 0, vendor_message_srv_ack},BLE_MESH_MODEL_OP_END, };/*(4) 定义模型配置字 */ struct bt_mesh_vendor_model_srv vendor_model_srv {.srv_tid.trans_tid 0xFF,/*应用层注册的此模型内操作码回调函数收到op的数据后执行op对应的处理函数处理完数据后应用层注册的此模型内操作码回调函数*/ .handler vendor_model_srv_rsp_handler, };/*(5)自定义加载模型*/ struct bt_mesh_model vnd_models[] {BLE_MESH_MODEL_VND_CB(CID_WCH, BLE_MESH_MODEL_ID_WCH_SRV, vnd_model_srv_op, /* op对应的处理函数*/NULL, vnd_model_srv_keys, /* 模型应用密钥 */vnd_model_srv_groups, /* 和订阅地址 */vendor_model_srv, /* 模型配置字 */NULL), };/*(6)初始化以及模型数据传递的过程*/ void App_Init();- vendor_model_srv_init(vnd_models); {vendor_model_srv-model vnd_models} /*将自定义的模型传递到 vendor_model_srv-model 中*/1️⃣ 接收到的数据是如何通知到应用层的 应用层初始化中注册应用层事件处理函数 void App_Init() { App_TaskID TMOS_ProcessEventRegister(App_ProcessEvent); }通过模型以及代码框架配置mesh网络节点收到数据时会调用应用层注册的回调函数 vendor_model_srv_rsp_handler(),在该回调函数中解析收到的蓝牙数据包指令根据解析的结果有不同事件从而启动不同的 服务函数。 2. 应用层模型分析 自定义模型结构体bt_mesh_model 自定义模型加载接口为结构体数组vnd_models[]其中 vnd_models[7] 的元素 vendor_model_srv在 vendor_model_srv中定义了 handler 函数 模型服务回调函数 vendor_model_srv_rsp_handler
http://www.dnsts.com.cn/news/29608.html

相关文章:

  • 网站推广怎样做广西最优秀的品牌网站建设公司
  • 网站开发进度计划什么是品牌vi设计
  • 济南做网站找大标开发网站公司如何运营
  • 智慧小区网站建设网络营销的未来发展趋势
  • 中国网库做网站wordpress获取头像
  • wordpress会建站怎么找工作企业网站开发的公司
  • 企业门户网站系统网站建设发布教程视频
  • 浙0577 icp网站建设房子装修找哪家好
  • wordpress子目录 多站点大学生免费服务器
  • 网站制作的前期主要是做好什么工作平面设计接单群
  • 惠州做网站优化成都的建站公司
  • 专业的建站公司推广重庆线上推广软件
  • 网站建设论文的研究方法企业网站建设主要考虑哪些
  • 哪里有网站开发团队易语言wordpress发帖
  • 怎么建立挣流量的网站哪家建设网站好
  • 华为官方网站进入行业网站制作
  • 乐清建设网站在线设计平台用户规模
  • 电商网站开发成本软件技术毕业后能做什么工作
  • 关于对网站建设情况的通报大连免费网站建设
  • 如何在电商上购物网站网页设计怎么做流动图片
  • 做ae好的网站有哪些合肥微信网站制作
  • 广州百度网站快速排名网站域名被注册
  • 平台网站建设方案销售课程视频免费
  • 莱芜可信赖的网站建设网站制作哪里好薇
  • 四川省建设厅网站首页网站架构策划
  • 个人做医疗类网站违法云南昆明网络公司有哪些
  • 专业的制作网站开发公司房天下房官网
  • 柳州住房和城乡建设局网站盐城企业网站建设
  • 济宁做网站哪家比较好可以下载的建站网站
  • 二级学院网站建设方案网站栏目英文