当FW刻录到SPI闪光灯时,更改BD地址

了解更多常见问题解答教程

8个帖子/ 0个新
最后一篇
林林
离线
最后一次露面:3年1周前
加入:2016-03-31 03:11
当FW刻录到SPI闪光灯时,更改BD地址

因为我们想要在DA14580中修改BD地址时FW被烧毁到SPI Flash,我们怎样才能这样做?
(让每个设备都有不同的BD地址。)

方法1:
我们在SPI flash中烧FW。如果可以,我们是否可以通过修改十六进制文件的BD地址来修改BD地址?(不要再次编译。)
如果我们能做到这一点,请帮助我们知道如何做。

方法2:
我们在SPI flash中烧FW。然后从OTP更改BD地址。
但是我们只是想改变BD地址,不要在OTP中使用其他设置。我们该怎么办呢?
您可以在SmartSnioOets Toolbox V4.7.3.1690中提供烧焦的OTP文件和命令行方法吗?(JTAG端口)
我们将从对话框中直接刻录OTP文件。
(希望逐步向美国提供方法。)

如果您有其他更好的方法将FW刻录到SPI Flash时更改BD地址,请帮助告诉我们。
谢谢。

设备:
mt_dialog.
离线
最后一次露面:2天19小时前
职员
加入:2015-06-08 11:34
嗨,维克,

嗨,维克,

580,没有闪光灯,所以在编译SDK时,为580编译,要通过NVDS更改每个设备的BD地址的选项,可以通过OTP或WW加载的FW填充。现在,如果您使用的是外部闪存,您必须修改SDK才能从闪存中读取BD地址,此方法存在于船上内部闪光灯的583。583如何完成,您将能够在System_Init()函数中调用的nvds_read_bdaddr()函数中找到它。读取583的闪存的函数是nvds_read_bdaddr_from_da14583_flash()。NVDS_READ_BDADDR_FROM_DA14583_FLASH()中的代码将在闪存中的指定地址中查找产品标题,如果该值除零以外,则检查指定的偏移量。如果值为有效,则它将需要该值并将其应用于用于设置设备的BD地址的Dev_bdaddr变量。因此,通过在具有不同DB地址的偏移中实现类似和刻录每个设备的闪光灯的东西,允许您为从闪存读取的每个设备具有不同的地址。

由于MT_Dialog

林林
离线
最后一次露面:3年1周前
加入:2016-03-31 03:11
所以我们必须通过修改代码

所以我们必须模仿上面提到的DA14583代码来修改代码,不能直接使用上面提到的DA14583函数来改变SPI flash的BD地址。
但是通过这种方法,我们如何在SPI闪存中添加新的BD地址?如我所知,SmartSnippet将在将十六进制文件刻录到SPI闪光灯时检查校验和。

但是,“方法二”呢?也许这是一个简单的方法。

mt_dialog.
离线
最后一次露面:2天19小时前
职员
加入:2015-06-08 11:34
嗨,维克,

嗨,维克,

从spi的bd地址的代码flash在580与583年相同但你会删除583定义为包括代码构建,改变函数名改变默认的针583闪闪光灯设置等。但作为一个实现将是相同的。使用智能片段,你可以使用适当的头程序员,以创建头和烧伤创建的头在flash。同样,这个头将在flash中不同的地址上,SS将检查被指示下载的内容是否被正确下载。

关于第二种方法,它需要刻录OTP标题,我有一个令人印象,你根本不想燃烧OTP,但如果它对你烧掉OTP,那么SDK将读取OTP BD地址价值没有任何修改。为此,您需要做的就是只需刻录设备唯一ID字段(Smart Scippets“OTP标题”工具)中OTP标题中的BD地址。这就是让设备从OTP获取BD地址的所有内容,您不需要更改其他任何内容。如果您想使用命令行,请检查智能代码段帮助选项,然后打开“用户手册”。在用户手册中,您将能够找到用于刻录OTP的CLI命令。

谢谢mt_dialog.

林林
离线
最后一次露面:3年1周前
加入:2016-03-31 03:11
方法1:

方法1:
您可以在使用专有标题程序员时提供刻录文件吗?
每个设备都有相同的刻录文件(唯一的区别是BD地址)。这样对吗?
我们应该烧FW和标头在SPI flash的哪个位置?

方法2:
这意味着我们可以按照步骤更改BD地址,并且不会有副作用。这样对吗?
步骤1:从DA14580读取OTP标题。
Step2:修改读OTP头“设备唯一标识”中的BD地址。
步骤3:将此已修改的OTP标头写入DA14580。

谢谢

mt_dialog.
离线
最后一次露面:2天19小时前
职员
加入:2015-06-08 11:34
嗨,维克,

嗨,维克,

  1. 请找到一个附加的。txt文件的例子如何产品头可能是,你可以加载在专有头程序员工具,并填写数据,你想要,然后刻录到flash。每个设备都应该使用该标头,但使用不同的bd地址烧录。SDK将检查的默认地址是0x1F000,但这取决于用户的决定。
  2. 这意味着您可以刻录我在上面指定的OTP标题字段,即不修改标题中的其他任何其他内容,并且SDK将在系统启动时检查特定字段,并在选择BD地址时检查特定字段。指定的OTP标题字段是SDK将在尝试填充BD地址时检查SDK的第一个位置。

谢谢mt_dialog.

林林
离线
最后一次露面:3年1周前
加入:2016-03-31 03:11
对于方法1(更改BD

方法一(通过SPI flash更改BD地址):
我们只需要在附加文件中修改以下“11223445566”。其他项目可以保持为原始(无值)。这样对吗?
6字符串BD_ADDRESS BD地址112233445566

对于方法2(通过OTP标题更改BD地址):
如果我们不改变任何OTP头,我们不能改变BD地址的OTP头。
所以我认为我们应该按照以下步骤更改BD地址,并且没有副作用。这样对吗?
步骤1:从DA14580读取OTP标题。
Step2:修改读OTP头“设备唯一标识”中的BD地址。
步骤3:将此已修改的OTP标头写入DA14580。

谢谢。

mt_dialog.
离线
最后一次露面:2天19小时前
职员
加入:2015-06-08 11:34
嗨,维克,

嗨,维克,

  1. 除了BD地址字段,您还需要使用0x7052填充签名标头,以便FW确认这是一个有效的产品标题。
  2. 我不明白这个问题,为了刻录SDK读取作为BD地址的指定字段中的OTP标题,您必须使用智能代码片工具,并应用VPP电压以刻录OTP标题。所以你应该遵循的步骤是:
    1. 命中连接顺序为fw将烧毁的OTP报头会被下载,这也会自动读取内存中的内容。
    2. 修改设置设备bd地址的两个“设备唯一标识”字段。
    3. 击中“刻录”按钮,以便在该字段中刻录的值,您应该好好去。

谢谢mt_dialog.