我的CC2541是作为peripheral设备的。当手机发出ADV_SCAN_REQ时,我的peripheral设备会回ADV_SCAN_RSP,这是通过Sniffer可以看到的现象。
我的问题是,在协议栈代码中,哪里是对ADV_SCAN_REQ和ADV_SCAN_RSP的处理?
多谢!
da qin zheng sheng:
关注!
Li Zongwu:
回复 da qin zheng sheng:
持续关注^_^
Li Zongwu:
持续关注^_^
Fuchong Wang:
好像调用bStatus_t GAP_DeviceDiscoveryRequest( gapDevDiscReq_t *pParams )
查看一下参数
有一项好像是设置是否自动发送ADV_SCAN_REQ的
至于响应
参照central示例代码
在回调函数中
case GAP_DEVICE_INFO_EVENT
ADV_SCAN_RSP会在这个类型事件中出现
可以检查pEvent->deviceInfo.eventType是否等于GAP_ADRPT_SCAN_RSP
(不保证可能有写错字母之类)
mark_xu:
GAPRole_SetParameter( GAPROLE_SCAN_RSP_DATA, sizeof ( scanRspData ), scanRspData ); GAPRole_SetParameter( GAPROLE_ADVERT_DATA, sizeof( advertData ), advertData );