![]() |
![]() |
![]() |
BLE连接参数更新过程详解
有关连接参数概念和作用我们在 Generic Access Profile (GAP) 一章中已经详细讲解过,这一章演示如何通过修改simple_peripheral例程实现连接参数更新,并分析程序流程。
介绍
连接参数更新过程中都是主机发起的,从机只能被动的接收主机设置的参数,这个过程发生在连接的时候,当连接之后如果主机设置的参数不利于从机,从机可以发送请求,请求中包含需要的连接参数,从机请求主机重新更新连接参数,主机可以拒绝,如果主机同意修改连接参数,并且参数合理,则主机发起连接参数更新,如果参数不合理(例如主机不支持过大或者过小的连接间隔),则主机会对参数进行协商,选择最合理的参数进行设置。由于从机发起连接参数更新请求的过程包含了主机发起连接参数更新的过程。本文以simple_peripheral工程为例,演示由从机发起连接参数更新请求的过程。
硬件环境
使用USB连接CC2640R2F Evaluation Board。确保跳线帽正确连接,如下图所示
软件环境
- IAR Embedded workbench 7.80.3
- BLE-STACK V3.0.1
- Packet Sniffer
- BTool
协议栈和IAR安装以及我们工程编译参考CC2640R2 BLE 开发环境搭建 编译参考

这篇博客详细介绍了如何在CC2640R2F设备上通过BLE5.0协议从机端发起连接参数更新的过程。内容涵盖硬件和软件环境设置、连接参数更新的运行流程,以及使用BTool和Packet Sniffer工具进行分析。文章强调了从机只能被动接受主机设置的参数,但在不利于从机的情况下,从机可以请求更新。博客还提供了代码示例和抓包分析,展示了参数更新的交互过程。




最低0.47元/天 解锁文章
1254

被折叠的 条评论
为什么被折叠?



