WCH沁恒单片机
直播中

cherry1989

12年用户 907经验值
擅长:嵌入式技术
私信 关注
[问答]

CH573的BLE作为从机使用时,如何手动断开蓝牙连接,有没有相关的接口可以调用?

  • BLE作为从机使用时,如何手动断开蓝牙连接,有没有相关的接口可以调用?
  • 应用程序的某个任务需要手动查询当前蓝牙处于连接状态还是广播状态,怎么操作?
  

回帖(1)

张旭

2022-8-30 09:38:34
断开可调用下面代码:

//这里的connHandle 是连接建立时候传进来的connection handle, 代表一路连接
extern bStatus_t GAPRole_TerminateLink( uint16 connHandle );


连接会有连接和断开会报事件上来,例程里面通常提供了函数:

连接断开:Peripheral_LinkTerminated( pEvent );
连接建立:Peripheral_LinkEstablished( pEvent );
至于是否处于广播状态可以通过以下api获取:

//获取当前广播状态//0为非广播,非0为广播uint8_t adv_status;
GAPRole_GetParameter(GAPROLE_ADVERT_ENABLED, &adv_status );


一个要注意的地方:

* 广播与连接 并不是互斥的, 可以存在连接建立后,仍然开启广播的情况(多连接场景).
举报

更多回帖

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