如何动态更改BD地址?

14个帖子/ 0新
最后一篇
SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
如何动态更改BD地址?

例如,我可以在启动期间更改BD地址,例如,我在custom_nvds_get_func()中添加一些代码来从外部闪存加载BD地址。但我以后无法改变它。有没有办法改变BD地址每当需要时启动后?

je_dialog.
离线
最后一次露面:5天7小时前
职员
加入:2013-12-05 14:02
嗨,请看

嗨,请参阅下面的帖子,我相信覆盖quets。

http://support.dialog-semicondiondiondum/bd-address-external-memory.

BR JE_DIALOG.

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
我担心你误解了

我担心你误解了我的问题。我已经读过该帖子,我想动态更改BD地址,但帖子中的解决方案只能更改一次BD地址。

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
我在这个问题被阻止了

我整天都在这个问题阻止了这个问题,你能帮我吗?

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
有什么建议?

有什么建议?

vesan.
离线
最后一次露面:5年4个月前
格鲁鲁 掌握
加入:2014-06-26 08:49
你好夏天2014年,

你好夏天2014年,

也许这份文件有用?

要使用所描述的方法,您需要通过键合获得IRK。

你能描述更多你的问题吗?

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
谢谢,但我已经添加了

谢谢,但我已经添加了代码以实现您指出的文档中讨论的功能,这是一个可解决的私人地址解决方案。它很好。但我的问题是,只要我想要,例如使用应用程序来配置它就可以配置BD地址。或者我不需要这样做,因为BD地址已经不时改变了???也许我不清楚。

vesan.
离线
最后一次露面:5年4个月前
格鲁鲁 掌握
加入:2014-06-26 08:49
你好夏天2014年,

你好夏天2014年,

在核心定义4.1 Vol 3 p。384它说:

设备可以选择在每个电源周期后初始化其静态地址到新值。一旦初始化,设备不得更改其静态地址值,直到设备为电源循环。

我怀疑你需要自己改变地址

py_dialog.
离线
最后一次露面:2年8个月前
职员
加入:2014-08-25 09:59
嗨Summer20100514,

嗨Summer20100514,

您可以更改BD地址,但要使它生效,您必须重置无线电。每次更改BD地址时,请使用GAPM_RESET消息重置您的收音机。

问候!
PY

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
我测试了gapm_reset命令,

我测试了GAPM_RESET命令,并改变了BD地址,但仍有一些东西让我混淆。我在custom_nvds_get_func()中添加以下代码

for(Uint8_t i = 0; i <6; i ++)
{
buf [i] = reload_bd_addr [i];
}
RELOAD_BD_ADDR [0] + = 1;

在我的服务的函数gattc_write_cmd_ind_handler()

//重置下层。
struct gapm_reset_cmd * cmd = ke_msg_alloc(gapm_reset_cmd,task_gapm,task_app,
GAPM_RESET_CMD);
cmd->操作= gapm_reset;
ke_msg_send(cmd);

结果

  1. 初始化后,BD地址是00 00 00 00 00 00 01
  2. 在我写一些东西到我的服务后,BD地址是00 00 00 00 00 03,但我找不到我的服务了,只能找到我的服务通用访问泛型属性剩下

我的问题

  1. 为什么BD地址增加2而不是1?
  2. 为什么我找不到我的服务发送GAPM_RESET命令后?
py_dialog.
离线
最后一次露面:2年8个月前
职员
加入:2014-08-25 09:59
嗨Summer20100514,

嗨Summer20100514,

1.检查您是否两次运行此代码。
2.您还需要在重置后重新修复您的个人资料服务。

问候!
PY

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
我猜这个功能自定义

我猜函数custom_nvds_get_func()是按堆栈调用的,因此我无法弄清楚它是否被调用两次。

SUMMER20100514.
离线
最后一次露面:4年2个月前
格鲁鲁
加入:2014-12-30 05:01
支持团队是否会成为

支持团队是否友好回答这个问题?

py_dialog.
离线
最后一次露面:2年8个月前
职员
加入:2014-08-25 09:59
嗨夏天,

嗨夏天,

您可以通过注释out cfg_ext_sleep和cfg_deep_sleep来关闭da14580_config.h中的睡眠模式。然后使用调试和断点来跟踪您的程序。

问候!
PY