微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 关于ble central接收广播信息的问题

关于ble central接收广播信息的问题

时间:10-02 整理:3721RD 点击:

问题1

ble 的Central设备在Searching Peripheral设备的时候,发现有些设备广播的字段长短不一,而且Central可能发现同一设备多次是怎么回事?

问题2 

Peripheral Device 广播的时候广播的是一些什么东西?格式是什么样的?

我猜测广播的时候就是广播在

在SimpleBLEPeripheral.c 中 的scanRspData内容,但后来发现广播内容还包含 service 的 UUID,为什么

在static bool simpleBLEFindSvcUuid( uint16 uuid, uint8 *pData, uint8 dataLen )中::::::::

***************************************

// For each UUID in list
while ( adLen >= 2 && pData < pEnd )
{
// Check for match
if ( pData[0] == LO_UINT16(uuid) && pData[1] == HI_UINT16(uuid) )
{
// Match found
return TRUE;
}

************************************************

问题3

simpleBLECentral。c  中

// Length of bd addr as a string
#define B_ADDR_STR_LEN 15

字段是什么意思?

是干嘛用的?

目前发现simple Peripheral 程序广播的额数据

BrodData: 0x140953696D706C65424C4550657269

前一字节0x14是数据长度

后一字节0x09是令牌 

定义在gap.h里面

问题来了

问题1:

:如果不是BLE芯片用的不是TI 的 CC2540,广播的数据是不是就不确定了如

BrodData:   0x0609466F72(0x06  显然不是数据长度)

问题2

广播包格式是不是

第一数据包长度+第一令牌+第一数据包

+第二令牌+第二数据包

+第三令牌+第三数据包

希望能有人解答,谢谢了

还有我想问一下的是,Service的UUID从哪里获取,如果我并不知道有该service存在的情况下。

向LightBlue就可以把未知的ServiceUUID和未知的characteristic UUID列举出来。

当然还能提供查找未知Characteristic UUID的方法就更好了

感谢热心的TI员工和飞TI员工,能提供的任何解答,谢谢了

调用discoverservices 之后,在didDiscoverservices 会回调发现的service.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top