在项目中,为了保证线程安全,我想在用户进入设置界面的时候关闭所有无用的外设以及暂时关闭蓝牙,同时又不影响程序的运行,有对应的函数是打开与关闭蓝牙服务的吗?谢谢各位!
YiKai Chen:
可以先檢查是否正在連線,如果是就斷開連線,然後停止BLE advertising,如果不是正在連線,就直接停止BLE advertising
user6359397:
回复 YiKai Chen:
好的,对应的停止蓝牙的函数和断开连接函数我可以在哪里找到呢?
YiKai Chen:
回复 user6359397:
你用得是什麼芯片跟協議棧的版本?
Viki Shi:
回复 user6359397:
类似下面的语句可用于关闭广播
uint8_t initialAdvertEnable = FALSE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t),&initialAdvertEnable);
user6359397:
回复 YiKai Chen:
抱歉忘记著名了,CC2640R2F的blestack/project_zero
YiKai Chen:
回复 user6359397:
可以檢查peripheral.c內的gapRole_state來知道連線狀態,斷線可以用GAPRole_TerminateConnection,关闭广播用
uint8_t initialAdvertEnable = FALSE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initialAdvertEnable);