蓝牙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地址的绑定,所以一直无法成功连接。

 

附录:程序参考

CH582_禁用绑定.zip

 

posted @ 2022-10-14 10:48  SweetTea_lllpc  阅读(386)  评论(5编辑  收藏  举报