完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
你好,由于受到了DSP RAM和EEPROM空间的限制,我想将故障数据以2ms的写操作周期向FLASH中存储,我想问的是: 1、手册中提到FLASH只能写1000次,是这样少吗?那对于一个产品来说就寿命就不足啦!难道这个FLASH的设计初衷就是主要用于程序吗? 2、手册中提到FLASH的写周期是16bit-word 50us,我们的需求是一次写操作32word/2ms,这个FLASH的稳定性应该还是能保证的吧?我采用的是以>10S的不定周期一次性擦除数据sector,但是分周期写入大量数据的故障数据存储方式。 3、当前的FLASH空间分配也不能满足需求,所以我尽可能将FLASH中的用于程序的部分整合,这个有没有什么规则? 当前分配情况为: SECTOR A 16K:.cinit;.pinit;.tableTri : L = 9.101K SECTOR B 16K:.econst;.switch;ramfuncs(自定义区域,内部程序拷贝到RAM运行): L = 12.713K SECTORC 16K、SECTORD 16K:.text : L = 23.932K 我想将SECTOR A空出来用于存储故障数据,请问目前的这些内容是不是可以随意混合存储在任何的FLASH空间中,比如,是否A中的内容可以全部存储到B中,或者部分存储到D中?? 或者,由于他们的编程操作次数不同,所以必须这样分组分块存储??? 虽然知道各段包含的内容的描述,但是在具体程序中,并不是很明白是什么规则使得编译器将哪个函数或变量确切地分配到哪个块中。比如,我们的两个通讯函数commsci.obj和comEcan.obj就分配到了.switch中,我不理解,麻烦您帮忙讲解一下。
|
|
相关推荐
7 个讨论
|
|
muuwfwr 发表于 2018-11-28 10:17 我是故障时才擦除一次这个sector,所以时间间隔通常很长,但是写周期是每2ms写32个word。 请问如果按照 .tableTri :> FLASHA|FLASHB|FLASHD 来定义,会不会有可能.tableTri被拆分到多个FLASH中存储??如果拆分开了,是不是也不会出错? |
|
|
|
|
|
|
|
guigui_7044 发表于 2018-11-28 10:35 1、我也是查看的6.12中的数据,是2808的,给出的寿命是1000次 3、我也明白FLASH区域可以分割和合并,只是想确认一下, .cinit;.pinit;.tableTri;.econst;.switch;ramfuncs;.text 如果通过使用一个FLASH来分割分配的话,在空间足够的前提下,基于FLASH擦除操作的最小单位是SECTOR,这是不是会有任何影响?也就是说,是不是可以确定以上所有块都是仅在烧写程序时单次擦除写入操作的,并不会发生有的块需要多些擦除,从而在擦除过程中影响到了其他块???
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
601 浏览 0 评论
1655 浏览 0 评论
2096 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1542 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1387 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1794浏览 29评论
2822浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1748浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1668浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1681浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-15 13:54 , Processed in 0.848794 second(s), Total 71, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3019