蓝牙技术
直播中

母猪会上树

9年用户 770经验值
擅长:电源/新能源
私信 关注
[问答]

CC2652R在GAP_DEVICE_INIT_DONE_EVENT事件中,目标设备调用GapInit_connect() 函数发起连接,连接上之后scan就停止的原因?

在 GAP_DEVICE_INIT_DONE_EVENT 事件中,初始化scan后,使能了连续扫描,在 MR_EVT_ADV_REPORT 事件中发现了目标设备调用 GapInit_connect() 函数发起连接,一旦连接上之后,scan就停止了,这是什么原因?




回帖(1)

杨海清

2024-5-30 16:20:43
CC2652R是一款基于TI CC26xx系列的无线微控制器,用于低功耗蓝牙(Bluetooth Low Energy,BLE)通信。在GAP_DEVICE_INIT_DONE_EVENT事件中,设备完成初始化并开始扫描以寻找其他设备。当发现目标设备后,调用GapInit_connect()函数发起连接。连接成功后,扫描停止的原因如下:

1. **连接建立后,设备进入连接状态**:在BLE通信中,设备在连接成功后会进入连接状态,此时设备的主要任务是与已连接的设备进行数据传输,而不是继续扫描寻找其他设备。

2. **资源分配**:在连接状态下,设备的资源(如CPU、内存、无线频谱等)需要分配给与已连接设备的通信。为了确保与已连接设备的数据传输稳定可靠,设备可能会停止扫描以节省资源。

3. **避免干扰**:在连接状态下,设备需要避免与其他设备的通信产生干扰。停止扫描可以减少与其他设备的通信冲突,提高与已连接设备通信的稳定性。

4. **节能**:BLE设备通常具有低功耗特性,停止扫描可以降低设备的功耗,延长设备的使用寿命。

5. **协议规定**:BLE协议规定,在连接状态下,设备需要遵循一定的通信规则,如数据包的发送和接收、信道切换等。停止扫描有助于设备更好地遵循这些规则,保证通信的顺利进行。

总之,CC2652R在GAP_DEVICE_INIT_DONE_EVENT事件中,连接上目标设备后扫描停止的原因主要是为了确保与已连接设备的数据传输稳定可靠,节省资源,避免干扰,以及遵循BLE协议规定。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分