嗨,对话框中,
我正在按照SUOTA教程更新我的定制DA14585板与外部闪光灯。它可以正确更新我的固件。但是我发现产品头文件和教程不一样。BD地址总是0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF我试图在地址0x380032中写入一个新值。重启后,我的设备地址没有改变。除了OTP的方法,还有什么新的方法更新BD地址吗?谢谢。
嗨hqf2013,
如果您想拥有SUOTA功能并更新数据库地址,您可以从将要下载的每个映像中更改它。因此,每个映像将有自己的BD地址,并且在固件更新后,BD地址将被更改。你能把最后一个问题说清楚吗?你说“除了OTP方法,还有什么方法可以更新bd地址”是什么意思?如果你已经烧毁了OTP头中的DD地址,应用程序将从OTP获取BD地址。否则,应用程序将从da1458x_config_advanced.h头文件中的CFG_NVDS_TAG_BD_ADDRESS定义中获取BD地址。如果在OTP报头中写入BD地址,该值将被忽略。
谢谢,PM_DIalog
谢谢你PM_DIalog。我们没有烧毁OTP头,我们知道OTP头将有最高的优先级。我们刚刚检查了DA14583的SDK 5.0.4,发现如下:
///设备BD地址Struct bd_addr dev_bdaddr __attribute__(((section(“retention_mem_area0”),zero_init));.......bool nvds_read_bdaddr_from_da14583_flash(空白){....}
这些函数和定义已经从DA14585的SDK 6.0.10中删除。DA14585从外置flash获取BD地址有问题吗?谢谢。
如果我理解正确,您希望将BD地址存储到外部SPI flash中并从那里读取它?我理解对了吗?
是的。我正在努力做到这一点。
是的,您可以将BD地址存储到外部SPI flash中,并从那里读取它。尽管没有任何类似nvds_read_bdaddr_from_da14583_flash()的API,所以您应该遵循585中的这个过程,以便从SPI flash中读取BD地址。
谢谢,PM_Dialog
好的。谢谢。
嗨hqf2013,
如果您想拥有SUOTA功能并更新数据库地址,您可以从将要下载的每个映像中更改它。因此,每个映像将有自己的BD地址,并且在固件更新后,BD地址将被更改。你能把最后一个问题说清楚吗?你说“除了OTP方法,还有什么方法可以更新bd地址”是什么意思?如果你已经烧毁了OTP头中的DD地址,应用程序将从OTP获取BD地址。否则,应用程序将从da1458x_config_advanced.h头文件中的CFG_NVDS_TAG_BD_ADDRESS定义中获取BD地址。如果在OTP报头中写入BD地址,该值将被忽略。
谢谢,PM_DIalog
谢谢你PM_DIalog。我们没有烧毁OTP头,我们知道OTP头将有最高的优先级。我们刚刚检查了DA14583的SDK 5.0.4,发现如下:
///设备BD地址
Struct bd_addr dev_bdaddr __attribute__(((section(“retention_mem_area0”),zero_init));
....
...
bool nvds_read_bdaddr_from_da14583_flash(空白)
{
....
}
这些函数和定义已经从DA14585的SDK 6.0.10中删除。DA14585从外置flash获取BD地址有问题吗?谢谢。
嗨hqf2013,
如果我理解正确,您希望将BD地址存储到外部SPI flash中并从那里读取它?我理解对了吗?
谢谢,PM_DIalog
是的。我正在努力做到这一点。
嗨hqf2013,
是的,您可以将BD地址存储到外部SPI flash中,并从那里读取它。尽管没有任何类似nvds_read_bdaddr_from_da14583_flash()的API,所以您应该遵循585中的这个过程,以便从SPI flash中读取BD地址。
谢谢,PM_Dialog
好的。谢谢。