亲爱的对话框,
我正在使用DA14580开发主机(观察者)系统。系统从多个节点收集adv数据包数据
外设的广播。
为了做到这一点,我有一个问题,在什么源代码我应该挂钩,以保存每个adv数据包数据到我的缓冲区
根据adv_report指示。在SDK3中,有一个处理程序函数app_adv_report_ind_handler(),但是
在SDK5中,我找不到这个功能,也找不到检测adv包的处理功能。
请告诉我在SDK5中我应该钩子和实现我的用户函数。
最好的问候,
日本
设备:
嗨yterasaki,
请检查user_app_callbacks中的app_on_adv_report_ind,它处理GAPM_ADV_REPORT_IND。即使没有您希望接收的回调函数的实现,您也可以在user_catch_rest_hndl中捕获您的其余消息。
由于MT_dialog
由于对话框,
我无法通过搜索关键字“app_on_adv_report_ind”或“GAPM_ADV_REPORT_IND”找到部分。
你能指定源代码,我应该钩我的缓冲功能的广告包?
我参考的设计是DA1458x_SDK\5.0.2.1\projects\target_apps\ble_examples\prox_monitor_ext\Keil_5。
如果prox_monitor_ext不适合我的目的,请建议我最好的例子。
最好的问候,
日本
嗨,日本,
你可以在app_task.c中找到gapm_adv_report_ind_handler。你能再找找看吗?
谢谢,MH_Dialog
亲爱的员工对话框,
下面是find操作的结果。(我选择了“在文件中查找”选项卡)
寻找“gapm_adv_report_ind_handler”……
匹配的行:0匹配的文件:0搜索的文件总数:184
最好的问候,
日本
你把它打开了吗?我需要你的帮助。
在sdk5中,观察者不工作。
嗨achao1104,
我找不到他们说的功能,所以我放弃了SDK5。
问候,
嗨,日本,
请构建项目并再次搜索。或者你可以在SDK文件夹“\ SDK \app_modules\src\app_common\app_task.c”中打开“app_task.c”文件。
谢谢,MH_Dialog
我实现了app_on_adv_report_ind,但我没有看到它被调用,也没有在user_catch_rest_hndl
嗨Achao1104,
是否向GAP任务发送设备发现请求?App_inq()发送执行此操作的命令。在这里找到代码DA1458x_SDK\5.0.3\projects\host_apps\windows\proximity\monitor\src\app.c
HandleBleMsg()处理指示GAPM_ADV_REPORT_IND并使用gapm_adv_report_ind_handler在app_env.devices中保存设备数据。
请在同一个文件夹下查找ble_msg.c和app_task.c。
希望这些信息能对你有所帮助
BR,
MH_Dialog
我用下面,是不是应该工作?
/ / app_timer_set (APP_ADV_TIMER TASK_APP 500);//180000 ms -> 3分钟
KE_MSG_ALLOC(gapm_start_scan_cmd, TASK_GAPM, TASK_APP, gapm_start_scan_cmd);
//最大对等体连接
msg->mode = GAP_GEN_DISCOVERY;/ / GAP_OBSERVER_MODE
//msg->mode = GAP_OBSERVER_MODE;
味精- > op。代码= GAPM_SCAN_PASSIVE;
/ /味精- > op。代码= GAPM_SCAN_ACTIVE;
味精- > op。addr_src = GAPM_PUBLIC_ADDR;
味精- > filter_duplic = SCAN_FILT_DUPLIC_EN;
味精- >间隔= 100;
味精- >窗口= 10000;
ke_msg_send(味精);
嗨achao1104,
请查看这篇文章http://support.dialog-semiconductor.com/bug-gapmcmpevthandler.
由于MT_dialog