蓝牙BLE从机Peripheral讲解八(禁用单个绑定设备\DISABLE_SINGLEBOND)
前言:
本篇博客对CH582蓝牙芯片的一个参数进行讲解:GAPBOND_DISABLE_SINGLEBOND,描述如下:
#define GAPBOND_DISABLE_SINGLEBOND 0x41A //!< Disable a single bonded device. Write only. Must provide address type followed by device address.
理解:禁用单个绑定设备。仅写入。必须提供地址类型,后跟设备地址。
此参数的目的是禁用单个绑定设备,即主机从机进行绑定后,从机端对该绑定的设备不满意,不希望与该主机建立连接,此时需要用到该参数进行禁用操作。
1、操作
首先获取主机端的地址类型,主从建立连接时从机端默认可以获取到主机端的地址类型的,如图:
其次获取绑定的MAC地址,这里获取可以调用函数进行处理,下图是获取到3个绑定的信息,可以获取到1个就可以了:
将最终获取到的MAC地址类型和MAC地址组合形成一个新的buff,该buff总共是七个字节,然后调用函数
GAPBondMgr_SetParameter(GAPBOND_DISABLE_SINGLEBOND, 7, &Buff[0]);
实现禁用处理。
总结:①获取主机地址类型;②获取绑定MAC地址;③调用函数。
2、验证:
这里的Buf就是获取的地址类型和MAC地址的组合,共7个字节大小。
这里再进行连接发现是无法成功的,因为此时的从机端设置为必须先配对绑定才可进行连接,但是从机禁用了该MAC地址的绑定,所以一直无法成功连接。
附录:程序参考