TI中文支持网
TI专业的中文技术问题搜集分享网站

Flash的主存储区包括全部的bank吗?

我用的MSP430F5438A,IAR下程序时,只能选择只擦主存储区或信息区也擦以及保留未改变的部分。我想把数据存在一部分bank里,以后下新程序再读取这段数据,flash擦除里不是可以选择只擦某段吗?这里的段不指某个bank(有四个bank各64kB)吗? 每次下新程序,全部的flash都被擦了。所以是每次下新程序四段bank都会被擦,但information区可以不擦,或者保留未改变的部分(这样前面的地址内会有原来的数据残留)吗?
tianyu zhao:

回复 Ken Wang:

谢谢回答

所以说,能够不被擦除掉的部分只有384B(对于MSP430F5438A)大小是吧?

我的IAR会有一种配置选择为:保留未改变的部分(包括main memory),这样的话新的程序只会覆盖开始一部分的Flash(从0x5C00开始),而不改变其他部分,假如我把数据写在flash较靠后的地址,新的程序(有可能未完全覆盖原程序代码部分所占的flash,但不会覆盖到数据区域)会受到影响吗?

因为我要存的数据挺大的information bank B,C,D的存储空间不够用,有解决方法吗?

谢谢!!!

tianyu zhao:

回复 Ken Wang:

Ken Wang

Hi tianyu,

 在CCS或是IAR的配置页面里面关于程序下载时存储器的配置,一般有以下几种常用的配置:

1. main memory only  指的就是flash,不包括information banks,

2. main memory and information memory,,指的是flash加上information bank B,C, D

3. main memory and information memory and protected information memory 指的就是flash information bank A, B , C, D.

所以说如果你想要把一些数据存储在flash里面不被擦除掉。可以选择奖数据保存在information bank B,C,D里面,A里面存有芯片出厂的时钟之类的校正值,不好在用。然后烧写程序时,选择第一种配置就行。

谢谢

ken

赞(0)
未经允许不得转载:TI中文支持网 » Flash的主存储区包括全部的bank吗?
分享到: 更多 (0)