需要帮助:ROM区域被Reram0溢出

⚠️
你好。。谢谢你来参加论坛。令人兴奋的消息!我们现在正在移动到我们的新论坛平台,将提供更好的功能,并包含在主对话网站的过程。所有帖子和账号都已迁移。我们现在只接受新论坛上的流量-请在//www.xmece.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
8个员额/0个新
最后一篇文章
布鲁克斯普罗莫
离线
最后一次见到:2年6个月前
已加入:2017-08-09 05:40
需要帮助:ROM区域被Reram0溢出

嗨对话,

我目前正在尝试将Suota添加到我的14681固件。我基本上是将PXP_Reporter源文件复制到我的构建目录中,并调整配置标题一位(以定义Suota)。构建时,我收到以下错误:

构建目标:构建/固件\u 0.1.0\u调试_qspi.elf
ld:ROM变量区域(从0x07FDC000开始)被RetRAM0溢出
collect2:错误:ld返回1退出状态
make:**[构建/固件\u 0.1.0\u调试_qspi.elf]错误1

我想有些东西我没有配置,或者是配置错误,但我不确定。我已经在保留RAM上阅读了UM-B-044-DA1468x软件平台参考文件的部分,但我不确定如何解决链接错误。

你能帮忙吗?我很高兴提供更多的信息,我想我需要,但我还不知道什么,只要告诉我!提前谢谢!

关键词:
设备:
PM\U对话框
离线
最后一次见到:3天19小时前
工作人员
已加入:2018-02-08 11:03
嗨Brooksprumo,

嗨Brooksprumo,

此错误的原因是因为retram0的长度太小,因此您应该增加retram0尺寸。首先,强烈建议在开发模式下使用非最佳回动,因为所有存储器单元都将被通电。因此,在非最佳配置中,您应该定义DG_CONFIGOPTIMAL_RETRAM(0)和DG_CONFIGMEM_RETENTION_MODE(0x1F)。最佳配置通常用于最终产品。有关获取更多信息,请在UM-B-044文档中查看图78和图79。因此,为了增加retram0尺寸,您应该减少RAM的大小。执行代码通常为8-10k,但首先检查代码的长度以配置DG_CONFIGQSPI_CACHED_RAM_SIZE_AE以正确的长度。在非最佳配置的情况下,在10K左右的代码,我在custom_config_qspi.h标题文件中可能配置可能是以下情况。

#定义dg\u配置QSPI U缓存的RAM\u大小\u AE(12*1024)//12K

#定义dg\u配置QSPI U缓存\u RETRAM\u 0\u大小\u AE(116*1024)//116K

12K(RAM)+ 116K(retram0)= 128K

如果配置最佳,可能的配置可能是:

#定义dg\u配置QSPI U缓存的RAM\u大小\u AE(12*1024)//12K

#定义dg\u配置QSPI U缓存的RAM\u大小\u AE(84.*1024)//84K

12K(RAM)+84K(重传0)+32K(重传0)=128K

此外,如果您想保留变量,强烈建议使用适当的标记。例如:

__保留\u RWi=0;//初始化保留变量的标记

__保留i、 //未初始化保留变量的标记

谢谢,下午好

布鲁克斯普罗莫
离线
最后一次见到:2年6个月前
已加入:2017-08-09 05:40
谢谢您!

谢谢您!

如果有进一步的问题,我将尝试这些设置并回复。

PM\U对话框
离线
最后一次见到:3天19小时前
工作人员
已加入:2018-02-08 11:03
嗨Brooksprumo,

嗨Brooksprumo,

请告诉我们,如果您有任何后续问题。

谢谢,下午好

布鲁克斯普罗莫
离线
最后一次见到:2年6个月前
已加入:2017-08-09 05:40
好的!这让我成功了

好 啊!这让我成功地构建了我的代码!

现在我遇到两个问题,它们可能有关联,但我不确定。

首先,我已经从pxp_uReporter演示中构建了引导加载程序和固件。我已经成功地按照文档构建项目,然后将引导加载程序和固件下载到我的设备上。现在我正在尝试在我自己的应用程序中使用pxp炣reporter演示中的SUOTA代码。首先,当我尝试下载ble_uusuota\u loader引导程序时,在执行下载时出错:

“文件大小不能超过65535字节。”

我正在使用命令行的SmartSnippet工具箱执行下载。命令是:

“C:/DiaSemi/SmartSnippetsStudio/Toolbox/SmartSnippetsStolbox.exe“-qspi类型-芯片DA14680-01-com\U端口4-固件”E:/$ble\U suota_装载机.bin“-cmd write-mode cached-file”E:/固件.bin"

我不确定是否有其他配置,我错过了,这是造成这个错误。

我的第二期。。。为了解决引导程序问题,我尝试恢复到uartboot.binbootloader目前(这是我一直使用的引导程序)。我可以下载那个引导程序,我相信我也成功地从pxp炣reporter下载了SUOTA代码的固件。但是,我认为设备运行不正确。

在SUOTA phone app对话框中,我没有看到我的设备,而且设备似乎也没有响应其他查询。也许我的固件在什么地方崩溃了?

我认为我的第二个问题目前可能太模糊了。不过,任何一个问题的帮助都将非常感谢!提前谢谢!

PM\U对话框
离线
最后一次见到:3天19小时前
工作人员
已加入:2018-02-08 11:03
嗨Brooksprumo,

嗨Brooksprumo,

请查看申请单AN-B-046 DA1468x从串行接口v1.2.pdf引导,第5.3章. 从我们的支持页面。在该章中,我们将解释串行引导协议。UART引导协议字节2和3表示文件的长度。对于2个字节,最大长度限制为0xFFFF(65535字节)。因此,最大长度受设计限制。要加载较大的文件,请使用SWDIO/SWCLK(JTAG)接口。如果使用JTAG,您是否可以下载固件?

谢谢,下午好

布鲁克斯普罗莫
离线
最后一次见到:2年6个月前
已加入:2017-08-09 05:40
哦,好吧,这很有道理。

哦,好吧,这很有道理。现在我只有一个UART串行连接到我的设备。我会考虑找一个开发委员会,这样我就可以使用JTAG了。

谢谢您!

PM\U对话框
离线
最后一次见到:3天19小时前
工作人员
已加入:2018-02-08 11:03
嗨Brooksprumo,

嗨Brooksprumo,

是的,请尝试一下JTAG接口,然后告诉我。如果您发现上述任何答案有用,请将其中一个标记为“已接受”。

谢谢,下午好