TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2640R2F蓝牙链接问题

1、不用事件去读CC2640R2F蓝牙连接状态,在定时器中去读写蓝牙状态,调用哪个函数

2、增加一个功能按键,按下后将蓝牙模块之前的配对清楚掉。重新配对,相当复位蓝牙模块。有没有相关参考例程

Viki Shi:

1、蓝牙状态可以自己添加代码实现,看一下这边工程师susan提供的例子:e2echina.ti.com/…/186843 2、你可以添加相关代码实现配对信息清除,同时设置为按键触发,这部分需要自行实现,清除绑定的函数可以用GAPBondMgr_SetParameter(GAPBOND_ERASE_ALLBONDS, NULL, NULL);

user3738299:

回复 Viki Shi:

我看上帖子里面的还是在event事件下做的。我想要一个函数是直接读取某一个寄存器的状态,从而知道当前蓝牙处于连接的状态

Viki Shi:

回复 user3738299:

据我所知,没有相关寄存器可直接获取链路层状态

user3738299:

回复 Viki Shi:

我用的官方的hid工程文件。里面没有蓝牙状态的读取。需要从simple_peripheral中移植这部分事件已经函数处理部分。现在移植了
1、#define SBP_ICALL_EVTICALL_MSG_EVENT_ID // Event_Id_31
#define SBP_QUEUE_EVTUTIL_QUEUE_EVENT_ID // Event_Id_30
#define SBP_PERIODIC_EVTEvent_Id_00

2、if (events & SBP_QUEUE_EVT){while (!Queue_empty(appMsgQueue)){sbpEvt_t *pMsg = (sbpEvt_t *)Util_dequeueMsg(appMsgQueue);if (pMsg){// Process message.SimpleBLEPeripheral_processAppMsg(pMsg);
// Free the space from the message.ICall_free(pMsg);}}}

3、SimpleBLEPeripheral_processAppMsg(pMsg);
4、SimpleBLEPeripheral_processStateChangeEvt((gaprole_States_t)pMsg->hdr.state);
在SimpleBLEPeripheral_processStateChangeEvt 处理函数里面。读取几种状态,对应点亮LED灯。
目前问题是蓝牙链接过程中led灯始终没有变化。请问我是哪里没有移植完全吗?

赞(0)
未经允许不得转载:TI中文支持网 » CC2640R2F蓝牙链接问题
分享到: 更多 (0)