DA14583 OTP偏移错误

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
10个帖子/ 0新
最后一篇
Rajapurerohit.
离线
最后一次露面:1年1个月前
加入:2017-04-20 09:17
DA14583 OTP偏移错误

大家好,
我已经用DA14583芯片设计了自己的定制板,现在是生产线。
我正在使用smartsnippesttool,使用OTP将.hex / .bin刻录到我的设备。我遵循以下步骤将OTP图像刻录到DA14583中,
1)#undef cfg_development_debug
2)#define cfg_boot_from_otp
3) # undef CFG_INITIALIZE_NVDS_STRUCT
4)连接我的定制设备和开发工具包,包括跳线设置
5)来自Smart Senippest工具的选定UART / SPI选项
6)然后我首先烧毁了OTP头文件
7)完成步骤6后尝试刻录OTP图像文件。
但在燃烧的图像文件期间,我收到错误。我附上了错误屏幕镜头请帮我解决这个问题。
迫切需要帮助。

感谢和问候
rohit.

依恋:
设备:
PM_DIALOG.
离线
最后一次露面:2天11小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

DA14583的OTP从0x40000开始,结束于0x47FFF地址(大小0x8000)。根据对话框用户手册UM-B-012的第9.3章,辅助引导加载程序在出厂时在OTP中刻录,它位于0x40000 - 0x41FFF(大小0x2000)中。此外,OTP报头在OTP的0x47F00-0x47FFF地址(大小0x100)中。因此,可以提供固件的可用区域是:

0x8000 - 0x2000 - 0x100 = 0x5700 = 24320字节

正如我能够从你的截图看,你的固件是25308个字节>字节24320,所以它比现有面积较大的,你可以写它。您的固件将被放置在二级引导程序之后,因此在大于24320字节的情况下,它将覆盖OTP标题的一部分。因此,我强烈建议您尝试将Binary更小或等于24320字节,然后尝试使用您已经提到的程序加载到OTP中的更新固件。为了获取有关辅助引导加载程序和高级引导加载程序的详细信息,请从我们的支持页面检查对话框用户手册UM-B-012。

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:1年1个月前
加入:2017-04-20 09:17
嗨pm_dialog,

嗨pm_dialog,
感谢你的快速回复,

我强烈建议你把二进制数缩小到24320字节,
意味着怎么办?我试过但仍然面临同样的问题。
而且我还经历了UM-B-012用户手册,我没有从文档中获得清晰的图片。

如果您有助于我理解解决我的问题,这对我来说非常有帮助。

在“OTP内存中的偏移量”字段中要设置的偏移量是多少?默认值是0x2000。
我也试图加载.hex文件可能是十六进制文件有点较大,所以我面临的问题。
你能帮我把。hex转换成。bin文件吗?在SDK 5.0.4中我没有得到任何工具来执行

感谢和问候
rohit.

PM_DIALOG.
离线
最后一次露面:2天11小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

我的意思是尝试减少应用程序代码,因此在构建代码时,输​​出二进制/十六进制图像应小于24320字节。这取决于您的应用程序,因此尝试删除您未使用的代码片段并优化代码。没有任何可用的应用程序将十六进制转换为bin,但请注意,您能够加载到SmartSnippets Toolbox中的HEX或BIN文件,并且将自动完成转换。

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:1年1个月前
加入:2017-04-20 09:17
嗨pm_dialog,

嗨pm_dialog,

谢谢你的回复,
我删除了未使用但仍面临的所有代码片段。
如果我想刻录.bin文件,那么我在哪里得到它?
因为对于所有SDK项目和我的自定义项目,我只有.hex为什么?
我在哪里可以获得hextobin实用程序?

感谢和问候
rohit.

PM_DIALOG.
离线
最后一次露面:2天11小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

当我在上一篇文章中提到时,SmartSnippets Toolbox支持十六进制和BIN文件,以刻录OTP / SPI闪存。我们不提供任何应用程序将二进制文件转换为十六进制。keil IDE生成十六进制文件,但如果要使用BIN文件,可以搜索它可以执行此操作的在线应用程序。请注意,十六进制文件无法将固件下载到OTP中的问题。如果您更新的固件的大小少于24320字节?

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:1年1个月前
加入:2017-04-20 09:17
嗨pm_dialog,

嗨pm_dialog,
谢谢你的快速回复,

是的,我们减少了代码片段,但我仍然面临同样的错误。
"所选文件的数据大小加上偏移量不应超过地址0x47000 "
我把它附在了第一个帖子上。

感谢和问候
rohit.

PM_DIALOG.
离线
最后一次露面:2天11小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

我无法复制您的问题,因此您可以在尝试将更新的固件下载到OTP中时提供智能片段的屏幕截图吗?哪个是缩小图像的大小?

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:1年1个月前
加入:2017-04-20 09:17
你好pm_dialog,

你好pm_dialog,

我已经分享了我的代码片段,请注意以下链接。

https://drive.google.com/open?id=1Jy3CQlrmL1jXnAFUf5gGoQQWTm8OZ_0q

还有附加错误消息图像。请帮我解决我的问题。
这非常紧急。

感谢和问候
rohit.

PM_DIALOG.
离线
最后一次露面:2天11小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

正如我在之前的文章中提到的,在OTP中编写固件的可用区域是24320字节。我运行并构建了您的项目,二进制映像是25900字节,这比可用区域长,所以您的固件将覆盖OTP头。请尽量减小你的固件的尺寸。如果减少二进制映像,那么如果您希望为高级引导加载程序引导,则应该将0x12345ABC值存储到OTP的x47F10地址中。请参见UM-B-012用户手册中的表1。但首先,你应该缩小二值图像。

谢谢,PM_DIALOG.