微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 请问 SimpleBLEPeripheral程序中,在不连接的情况下怎么读取主机发送的ADV_SCAN_REQ中包含的主机MAC地址即ScanA。

请问 SimpleBLEPeripheral程序中,在不连接的情况下怎么读取主机发送的ADV_SCAN_REQ中包含的主机MAC地址即ScanA。

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

SmartRF Packet Sniffer可以抓到这一帧,但是SimpleBLEPeripheral程序中怎么实现?

fengping,

你可以在central 的代码里面搜索pEvent->deviceInfo.addr,就明白了。

你好

我现在是想在从机SimpleBLEPeripheral程序中在不连接的情况下读取到主机的地址。

是GAP_PROFILE_PERIPHERAL设备在不连接的情况下读取GAP_PROFILE_CENTRAL设备的地址。我看到GAP_PROFILE_CENTRAL发的ADV_SCNF_REQ帧中有ScanA地址。然后GAP_PROFILE_PERIPHERAL设备收到后在哪里能读出来?

fengping,

Peripheral做不到,没法在无连接的情况下得知对方地址。

Yan

谢谢你的回复。

但是我用SmartRF Packet Sniffer抓包显示:GAP_PROFILE_CENTRAL设备发送SCAN_REQ时有发送自己的地址SCANA。

是否SimpleBLEPeripheral程序中GAP_PROFILE_PERIPHERAL设备在底层收到SCAN_REQ后,并没有对SCANA地址进行处理,直接发送应答。也没有给上层APP提供可以得到SCAN_REQ这一帧数据的接口?

  如下图:

  

fengping,

很遗憾,作为peripheral, 应用的级别没法得到对方的地址,这是蓝牙link layer底层进行交互回复的,在无连接的情况下,底层是不会告诉应用层对方的地址。

Yan

了解,3Q。

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

网站地图

Top