az158 发表于 2022-11-8 19:43:58

【Telink-泰凌微电子 B91通用开发套件】+ 3.浅谈广播数据

本帖最后由 az158 于 2022-11-9 22:51 编辑

广播是ble蓝牙中很重要的一部分,今天就拿泰凌微电子B91这个套件,说一下ble广播数据的内容。
先看看默认代码的效果


用蓝牙扫描可以看到下面的效果,可以看到具体数据里面有两个 Complete Local Name 数据,在这里前面一个是在广播数据包里面,而第二个是在扫描响应包里面。


可以对代码进行修改,注释掉扫描响应包的数据。


可以看到扫描到的名称发生了改变,而且具体数据里面只有一个 Complete Local Name 数据


继续看一下具体的数据情况。
<font size="4">/**
* @brief      Adv Packet data
*/
const u8      tbl_advData[] = {
         0x05, 0x09, 'e', 'H', 'I', 'D',
         0x02, 0x01, 0x05,                                                         // BLE limited discoverable mode and BR/EDR not supported
         0x03, 0x19, 0x80, 0x01,                                       // 384, Generic Remote Control, Generic category
         0x05, 0x02, 0x12, 0x18, 0x0F, 0x18,                // incomplete list of service class UUIDs (0x1812, 0x180F)
};</font>
比如上面的数据
0x05, 0x09, 'e', 'H', 'I', 'D',
其中0x05是指代这一条的长度,向后一共五位
0x09是这一段的类型,这里是指扫描到的名称
'e', 'H', 'I', 'D'这些就是载荷数据了,这里就是蓝牙的名称eHID

试着修改一下
<font size="4">const u8      tbl_advData[] = {
         0x04, 0x09, 'a', 'b', 'c',
         0x02, 0x01, 0x05,                                                         // BLE limited discoverable mode and BR/EDR not supported
         0x03, 0x19, 0x80, 0x01,                                       // 384, Generic Remote Control, Generic category
         0x05, 0x02, 0x12, 0x18, 0x0F, 0x18,                // incomplete list of service class UUIDs (0x1812, 0x180F)
};</font>
下载到芯片看看,蓝牙名称已经改变了













页: [1]
查看完整版本: 【Telink-泰凌微电子 B91通用开发套件】+ 3.浅谈广播数据