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

f28027 程序过大 如何拆分在线仿真

"../28027_RAM_lnk.cmd", line 114: error #10099-D: program will not fit into available memory. placement with alignment/blocking fails for section ".text" size 0x9bf page 0. Available memory ranges:
PRAML0 size: 0x900 unused: 0x900 max hole: 0x900error #10010: errors encountered during linking; "BLDC.out" not built

我仔细看了一下cmd文件

  PRAML0     : origin = 0x008000, length = 0x000900

长度分配了900,另外的   分配为了

DRAML0      : origin = 0x008900, length = 0x000700

现在我长度900不满足我的程序要求,我看到0x3f8000——0x3f9000位L0 saram的映射区域,因此我想把PRAML0或者DRAML0 映射到0x3f8000——0x3f9000区域,DRAML0 和PRAML0 单独放在两个区域,这样以便给PRAML0腾出更多的空间。但是我改了一下地址,编译通过了,点击仿真连接后竟然自动运行,开始仿真的按钮是灰色的,点击暂停就跳入boot28.inc的文件里。。。一直这样。。怎么解决

改后的地址

PAGE 0:   

PRAML0     : origin = 0x008000, length = 0x001000

PAGE 1:

 DRAML0      : origin = 0x3f8900, length = 0x000700

rookiecalf:

为什么不直接使用F28027.cmd呢,这个是flash版本的cmd

"../28027_RAM_lnk.cmd", line 114: error #10099-D: program will not fit into available memory. placement with alignment/blocking fails for section ".text" size 0x9bf page 0. Available memory ranges:
PRAML0 size: 0x900 unused: 0x900 max hole: 0x900error #10010: errors encountered during linking; "BLDC.out" not built

我仔细看了一下cmd文件

  PRAML0     : origin = 0x008000, length = 0x000900

长度分配了900,另外的   分配为了

DRAML0      : origin = 0x008900, length = 0x000700

现在我长度900不满足我的程序要求,我看到0x3f8000——0x3f9000位L0 saram的映射区域,因此我想把PRAML0或者DRAML0 映射到0x3f8000——0x3f9000区域,DRAML0 和PRAML0 单独放在两个区域,这样以便给PRAML0腾出更多的空间。但是我改了一下地址,编译通过了,点击仿真连接后竟然自动运行,开始仿真的按钮是灰色的,点击暂停就跳入boot28.inc的文件里。。。一直这样。。怎么解决

改后的地址

PAGE 0:   

PRAML0     : origin = 0x008000, length = 0x001000

PAGE 1:

 DRAML0      : origin = 0x3f8900, length = 0x000700

yongliang li1:

回复 rookiecalf:

这样是可以的,但是这样调试不够方便每次都得下载到flash里面。有没有其他方法在ram里面运行的。。这样方便调节3f8000–3f9000这个区间为什么不能用呢

"../28027_RAM_lnk.cmd", line 114: error #10099-D: program will not fit into available memory. placement with alignment/blocking fails for section ".text" size 0x9bf page 0. Available memory ranges:
PRAML0 size: 0x900 unused: 0x900 max hole: 0x900error #10010: errors encountered during linking; "BLDC.out" not built

我仔细看了一下cmd文件

  PRAML0     : origin = 0x008000, length = 0x000900

长度分配了900,另外的   分配为了

DRAML0      : origin = 0x008900, length = 0x000700

现在我长度900不满足我的程序要求,我看到0x3f8000——0x3f9000位L0 saram的映射区域,因此我想把PRAML0或者DRAML0 映射到0x3f8000——0x3f9000区域,DRAML0 和PRAML0 单独放在两个区域,这样以便给PRAML0腾出更多的空间。但是我改了一下地址,编译通过了,点击仿真连接后竟然自动运行,开始仿真的按钮是灰色的,点击暂停就跳入boot28.inc的文件里。。。一直这样。。怎么解决

改后的地址

PAGE 0:   

PRAML0     : origin = 0x008000, length = 0x001000

PAGE 1:

 DRAML0      : origin = 0x3f8900, length = 0x000700

囧:

回复 yongliang li1:

F28027 Flash很小,下载起来很快,3F8000-3F9000只是地址的映射,并不是另一个RAM,和0X8000那边的RAML0是一个物理存储空间。

赞(0)
未经允许不得转载:TI中文支持网 » f28027 程序过大 如何拆分在线仿真
分享到: 更多 (0)