14个帖子/ 0新
最后一篇
索引219.
离线
最后一次露面:1年8个月前
加入:2016-05-23 07:00
DA14681 RAM溢出溢出错误

嗨对话框,
我在使用DA14681开发过程中,初始化一个2K大小的BUF,定义定义下:
privileged_data buf [2 * 1024];
编译后提示错误:...:ROM变量区域(从0x07fdc000开始)由retram0溢出

如果去掉privileged_data,编译通过,无错误。

手册中写到:
64 KB一次性可编程(OTP)内存
128 KB数据SRAM具有保留功能
具有保留功能的16 kB缓存SRAM
128 KB ROM(包括Boot ROM和BLE堆栈)
请问一下:
1.privileged_data修饰符的区别?
2.DA14681官方是有资料说明:系统的内存资源是如何如何??,使其定义添指定的sram区域?

设备:
qinjiny_dialog.
离线
最后一次露面:2个月2周前
职员
加入:2016-11-01 05:47
特权

特权_修饰的数据和函数都是与frepertos相关的,放在掉电极保持ram里。一件不出现。

关键字SRAM的更多信息可以看一下一下UM-B-044software平台参考文章里的第10节。关联私人的第相关的信息也可以在该文学相关Freertos里的分支。

需要指定销量定义的sram区域的话,可以查看代码里面_attribute_(部分())相关的使用

jun.xu@tcl.com.
离线
最后一次露面:4年2个月前
加入:2016-10-31 01:25
privileged_data.

privileged_data是放在定义的两种的大量的,如果需要这么大的空间,需要添加配两件。

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨,对话

嗨,对话
da14681_sdk_v1.0.8,示例--- PXP_Reporter
#define privileged_data __attribute __((第(章节(“privileged_data_zi”)))))
>> privileged_data关键词字定义的变送到“privileged_data_zi”区
在ldscripts - > sections.ld.h中间“ribieged_data_zi”定位在rentent_ram1中
当时我发表“os_heap”,“ble_msg_heap”,“ble_env_heap”,“ble_db_heap”,“保留_mem_zi”也放在rentent_ram1中

在config - > custom_config_qspi.h中找到#define retram_1_size(32 * 1024)
如果在rentio _ram1中间的部分大小超过了retram_1_size编译就会报告,
比如定义privileged_data的音量组大型时尚会引起会不通

>>我觉得是的,怎么样实现定义privileged_data的体重能够大,
比如按照以上的情况,定义privileged_data buf [2 * 1024]就就通过,如何设置可以通讯

请对话工程师开开发681工程师提供一道解决或!!!

谢谢。
最好的祝福。

jun.xu@tcl.com.
离线
最后一次露面:4年2个月前
加入:2016-10-31 01:25
在custom_config_qspi_suota.

在custom_config_qspi_suota.h文件中的
configtotal_heap_size这个宏定义的是我们整个工程的堆大小

然后你是的,ram1这个则是在如下面六里里的

#define code_size(128 * 2 * 1024)

#if(dg_configexec_mode == mode_is_cached)
/ * da14681-01
* RAM首先,retram 0跟随。在开始时添加了回动
*使用优化的Retram配置(以便IVT保留)。
* /
#define retram_first 0.

#define ram_size(32 * 1024)

#if(proj_configoptimal_retram == 0)
#define retram_0_size(96 * 1024)////这里是我的配置
#define retram_1_size(0 * 1024)
#别的
#define retram_0_size(32 * 1024)
#define retram_1_size(32 * 1024)
#万一
#else // mired.
#Error“QSPI镜像模式不受支持!”
#万一

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu,

嗨jun.xu,
非常非常你会快回复我的♥。
/ *
*控制项目使用的旋回尺寸。
* 0:保留所有RAM
* 1:保留存储器大小是最佳的
* /
#define proj_configoptimal_retram(1)
#define dg_configmem_retention_mode(0x14)
#define dg_configshuffling_mode(0x2)

在custom_config_qspi_suota.h中,你是怎么设置的,也说说这些的用途含义!!!

谢谢。
最好的祝福。

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu,

嗨jun.xu,
非常非常你会快回复我的♥。
/ *
*控制项目使用的旋回尺寸。
* 0:保留所有RAM
* 1:保留存储器大小是最佳的
* /
#define proj_configoptimal_retram(1)
#define dg_configmem_retention_mode(0x14)
#define dg_configshuffling_mode(0x2)

在custom_config_qspi_suota.h中,你是怎么设置的,也说说这些的用途含义!!!

谢谢。
最好的祝福。

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu,

嗨jun.xu,
非常非常你会快回复我的♥。
/ *
*控制项目使用的旋回尺寸。
* 0:保留所有RAM
* 1:保留存储器大小是最佳的
* /
#define proj_configoptimal_retram(1)
#define dg_configmem_retention_mode(0x14)
#define dg_configshuffling_mode(0x2)

在custom_config_qspi_suota.h中,你是怎么设置的,也说说这些的用途含义!!!

谢谢。
最好的祝福。

jun.xu@tcl.com.
离线
最后一次露面:4年2个月前
加入:2016-10-31 01:25
proj_configoptimal_retram(1)

proj_configoptimal_retram(1)这个表示休眠是否分ram掉ー,ー,ー,ー,
dg_configmem_retention_mode(0x14)这个是使用默认设置,设置了proj_configoptimal_retram(0)就会有这个设置
#if(proj_configoptimal_retram == 0)
#define dg_configmem_retention_mode(0x1f)
#define dg_configshuffling_mode(0x3)

然后我对ram的配置

#define ram_size(32 * 1024)

#if(proj_configoptimal_retram == 0)
#define retram_0_size(96 * 1024)
#define retram_1_size(0 * 1024)
#别的
#define retram_0_size(32 * 1024)
#define retram_1_size(32 * 1024)
#万一

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu / dialog,

嗨jun.xu / dialog,
DA14681 RAM = 128KB,查看681datasheet知道,ram = 5次不成的Ram单位组成的(每个ram都支持保留)

RAM1 8KB 0x7FC0000 >> 0x7FC0000N内存区必须设置为重新定位(保存中间断量表)
RAM2 24KB 0x7FC2000 >> Ram1,Ram2和Ram3占用空间大小可口通讯DG_COFIGSHUFFLED_MODE来修改
RAM3 32KB 0x7FC8000

RAM4 32KB 0x7FD0000

Ram5 32KB 0x7FD8000 >>必须设置为重新定位

dg_configmem_retention_mode值的低5位对应ram1 - > ram5,
0:关闭保留1:开启保留

根据da14681数据手册中知道设置ram为RAM为保留(睡眠睡眠下仍可保存ram数码)将会影响待机功耗

所以设置合良的分数才使得整个系统处于最佳佳
proj_configoptimal_retram.
0:保留所有RAM
1:保留记忆大小是最佳的

一件事下,会设置proj_configoptimal_retram = 1
如果我想要ram = 56kb,retram = 72kb,dg_configmem_retention_mode应该怎么设置,还有还需要设置或修改幂

谢谢
最好的祝福。

jun.xu@tcl.com.
离线
最后一次露面:4年2个月前
加入:2016-10-31 01:25
经过自然的实测,ram保留对功耗的影响不安大

经过自然的实测,ram保留对功耗的影响不安大,如果你在ram里面放了了代码的。
(我也是在Ramir面面放大量代码,然后我就必须ram不起电源。但我是我的功耗在很很,底电池可以达到10ua))

设置了proj_configoptimal_retram = 1的话,就会有默认的dg_configmem_retention_mode = 0x14的配置
我觉得是用来的。
只要3个ram的值和等于128就好了。

如果你知道了dg_configmem_retention_mode的相关配置方案,麻烦分享一下,谢谢!〜

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu / dialog,

嗨jun.xu / dialog,
哦,ram保留对功耗影响不大的话那可了

你说ram放了大量代码是指什么(请解释下),代码不仅是在闪存吗

关键词dg_configmem_retention_mode配置请查看
UM-B-044-DA1468x软件平台Reference_4_0.pdf ---> 13.3保留RAM优化和配置

关键ram的配置,我希望希望你更多的♥
谢谢
最好的祝福。

jun.xu@tcl.com.
离线
最后一次露面:4年2个月前
加入:2016-10-31 01:25
14681有一个16k的缓存

14681有一个16k的缓存,如果选择了缓存模式,我们的代码就可以在缓存里跑,这样我的存放在闪存里面的代码不起多大
我会有问题。

然后常用的代码就放在rami面,这样就可减少从闪存负荷代码到缓存里面的时间,也可降低功耗。

yuangang0101
离线
最后一次露面:1年8个月前
加入:2014-02-18 08:58
嗨jun.xu / dialog,

嗨jun.xu / dialog,
我想了解清楚点,哪些代码是在ram里的,有没有是有关关注字的,或者怎么设置代码放在ram的,这个ram是重温ram吗
然后就是使用的代码到到到ram中的

谢谢
最好的祝福。