OTP和记录地址

4个职位/ 0个新职位
最后发表
Guignier
离线
最后看到:3年4个月前
加入:2014-06-10 09:39
OTP和记录地址

你好,

我在用我自己的。hex编程OPT。

我已经编译了这在keil与良好的选项OTP。

但是在SmartSnippets中,当我在OTP图像中加载。hex时,我在日志窗口中有以下消息:

"从文件full_emb_sysram.hex中读取0字节。14524字节被忽略,因为它们的记录地址大于或等于0x80000。”

你有什么办法解决这个问题吗?

我的。hex的第一行是:

: 020000042000 da
: 1000000000980020 a9040020b1040020c9040020a9
: 1000100000000000000000000000000000000000 e0
: 10002000000000000000000000000000 e1040020cb
: 100030000000000000000000 f9040020fb04002084
: 10004000 dd1c0020053103000d31030015310300d4
: 10005000911 d00208d310300e71d0020ef1d0020c1

最好的问候,

瑞吉斯

AK_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2013-12-16 15:49
嗨,瑞吉斯,

嗨,瑞吉斯,

这意味着加载地址被设置为0x80000(保留RAM),这是来自SmartSnippets的警告。如果您想从OTP开始,那么加载地址应该是0x0,如果您想从保留RAM (0x80000)执行,那么您的执行地址需要设置为0x80000。

为了实现这一点,你必须使用一个分散文件的链接器。关于此的信息可以在文档中找到:<>

最好的问候,

对话蓝牙支持团队。

Guignier
离线
最后看到:3年4个月前
加入:2014-06-10 09:39
你好,

你好,

我不明白我的问题所在。我使用的文件是scatterfile_common。从SDK和编译选项的EXT_SLEEP和OTP模式来生成我的。hex。
我在“UM-B-011”中没有找到OTP的信息

为OTP烧录生成。hex是正确的方法吗?
如何更改OTP的起始地址为0x00 ?

正确的方法是什么?

最好的问候,

瑞吉斯

AK_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2013-12-16 15:49
嗨,瑞吉斯,

嗨,瑞吉斯,

如果你使用'scatterfile_common。然后,应用程序的加载和执行区域应该是正常的。如果你还定义:

#define DEVELOPMENT_DEBUG 0 //0: OTP代码,1:JTAG代码

有关OTP编程指南,请参阅AN-B-020 DA14580最终产品测试和编程指南V1.3.pdf。

最好的问候,

对话蓝牙支持团队。