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

关于F28035.cmd中FLASHB的问题

默认的F28035.cmd中有如下定义:

PAGE 1 :/* Data Memory *//* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE0 for program allocation *//* Registers remain on PAGE1*/BOOT_RSVD: origin = 0x000000, length = 0x000050/* Part of M0, BOOT rom will use this for stack */RAMM0: origin = 0x000050, length = 0x0003B0/* on-chip RAM block M0 */RAMM1: origin = 0x000400, length = 0x000400/* on-chip RAM block M1 */RAML2: origin = 0x008C00, length = 0x000400/* on-chip RAM block L2 */RAML3: origin = 0x009000, length = 0x001000/* on-chip RAM block L3 */FLASHB: origin = 0x3F4000, length = 0x002000/* on-chip FLASH */
想问一下那个FLASHB的定义是什么意思?怎么用?

mangui zhang:

结合MCU内存映射看   应该是将FLASH区划分为了A 和B

具体存什么非易失的内容    需要你看看cmd中的其他内容

默认的F28035.cmd中有如下定义:

PAGE 1 :/* Data Memory *//* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE0 for program allocation *//* Registers remain on PAGE1*/BOOT_RSVD: origin = 0x000000, length = 0x000050/* Part of M0, BOOT rom will use this for stack */RAMM0: origin = 0x000050, length = 0x0003B0/* on-chip RAM block M0 */RAMM1: origin = 0x000400, length = 0x000400/* on-chip RAM block M1 */RAML2: origin = 0x008C00, length = 0x000400/* on-chip RAM block L2 */RAML3: origin = 0x009000, length = 0x001000/* on-chip RAM block L3 */FLASHB: origin = 0x3F4000, length = 0x002000/* on-chip FLASH */
想问一下那个FLASHB的定义是什么意思?怎么用?

Seven Han:

分配的片上flash块的大小,可以参考例程中的应用。

默认的F28035.cmd中有如下定义:

PAGE 1 :/* Data Memory *//* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE0 for program allocation *//* Registers remain on PAGE1*/BOOT_RSVD: origin = 0x000000, length = 0x000050/* Part of M0, BOOT rom will use this for stack */RAMM0: origin = 0x000050, length = 0x0003B0/* on-chip RAM block M0 */RAMM1: origin = 0x000400, length = 0x000400/* on-chip RAM block M1 */RAML2: origin = 0x008C00, length = 0x000400/* on-chip RAM block L2 */RAML3: origin = 0x009000, length = 0x001000/* on-chip RAM block L3 */FLASHB: origin = 0x3F4000, length = 0x002000/* on-chip FLASH */
想问一下那个FLASHB的定义是什么意思?怎么用?

Atsing Hou:

回复 mangui zhang:

感谢回答。

Flash分块我理解,我是疑问如下:

cmd文件里通常定义两个Memory Page(0和1),0是Program memory, 1是Data memory。

Program memory定义了.text等代码空间,Data memory定义了stack和ebss等数据空间,所以RAMM0和RAML1这些我能理解,我的问题是:

为什么Data memory里也有一个FLASH块?难道我可以把一部分Data放到flash上吗?如果是,那这部分Data是可写呢还是只读?

是不是可以定义这样一个section:

constdata     : >FLASHB, Page = 1

用于存放程序中的常量?

默认的F28035.cmd中有如下定义:

PAGE 1 :/* Data Memory *//* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE0 for program allocation *//* Registers remain on PAGE1*/BOOT_RSVD: origin = 0x000000, length = 0x000050/* Part of M0, BOOT rom will use this for stack */RAMM0: origin = 0x000050, length = 0x0003B0/* on-chip RAM block M0 */RAMM1: origin = 0x000400, length = 0x000400/* on-chip RAM block M1 */RAML2: origin = 0x008C00, length = 0x000400/* on-chip RAM block L2 */RAML3: origin = 0x009000, length = 0x001000/* on-chip RAM block L3 */FLASHB: origin = 0x3F4000, length = 0x002000/* on-chip FLASH */
想问一下那个FLASHB的定义是什么意思?怎么用?

Atsing Hou:

回复 Eric Ma:

明白了,多谢!

赞(0)
未经允许不得转载:TI中文支持网 » 关于F28035.cmd中FLASHB的问题
分享到: 更多 (0)