看了你们的视频发现前面的概述很好,对一个没有接触过蓝牙的人有个初步印象。
我现在跟踪BLE stack 1.3.1的代码,基本了解了CC250x的HAL层操作和OSAL,但是对协议栈还是一头雾水。
请问有没有讲解BLE协议栈的,最好配合几个入门的例子。
请赐教!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
看了你们的视频发现前面的概述很好,对一个没有接触过蓝牙的人有个初步印象。
我现在跟踪BLE stack 1.3.1的代码,基本了解了CC250x的HAL层操作和OSAL,但是对协议栈还是一头雾水。
请问有没有讲解BLE协议栈的,最好配合几个入门的例子。
请赐教!
pairing和bond不是必须的.
没这两货蓝牙也能通信.
开发板示例程序代码默认一般都是等对方来发起pairing和bond. 如果对方不发起, 就不做这两个过程.
请参看下面宏定义:
#define GAPBOND_PAIRING_MODE_NO_PAIRING 0x00 //!< Pairing is not allowed
#define GAPBOND_PAIRING_MODE_WAIT_FOR_REQ 0x01 //!< Wait for a pairing request or slave security request
#define GAPBOND_PAIRING_MODE_INITIATE 0x02 //!< Don't wait, initiate a pairing request or slave security request
pairing就是配对.
bonding就是把配对信息记录下来, 下次就不用配对了. 不bonding下次就还得配对.
所以没在bonding列表里的设备不影响连接, 照连不误.
没有优先级. 用户可以自定义.
其实你做应用的话没必要关心这些事情. 只要通过之前告诉你的几个选项选择相应的配对模式就可以. 剩下的都是bond manager和底层的固件来完成的.
有兴趣的话你可以追一下, 比如从peripheral.c中, 连接建立后, 收到GAP_LINK_ESTABLISHED_EVENT, 会调用GAPBondMgr_LinkEst(), 你就接着 看一下gapbondmgr.c 里面的内容吧.
xie,你好,
我现在刚买了个开发板,TI的芯片CC2540. 对配对和绑定过程看得不是很明白啊。在此请教个问题,假如从机配对模式设置为GAPBOND_PAIRING_MODE_INITIATE, 主机设置为GAPBOND_PAIRING_MODE_WAIT_FOR_REQ,此时主从机两边会处理哪些事件呢? 主从机配对和绑定的整个时序是怎样的呢?谢谢了。