28035数据太大CMD如何修改?

2019-03-24 09:14发布

定义了三个数组,然后调试的时候电机不转了,一开始还不知道是数据大,因为编译是通过的。后面观察变量值得时候才发现内存不够,我想修改CMD文件来满足数据的要求,但不知道哪个段需要增加,忘求指点迷津。以下是数据段的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 */
RAML23 : origin = 0x008C00, length = 0x001E00 /* on-chip RAM block L2 */
FLASHB1 : origin = 0x3F4000, length = 0x001000 /* on-chip FLASH */

}

/* Allocate sections to memory blocks.
Note:
codestart user defined section in DSP28_CodeStartBranch.asm used to redirect code
execution when booting to flash
ramfuncs user defined section to store functions that will be copied from Flash into RAM
*/

SECTIONS
{

/* Allocate program areas: */
.cinit : > FLASHCDEFGH PAGE = 0
.pinit : > FLASHCDEFGH, PAGE = 0
.text : > FLASHCDEFGH PAGE = 0
codestart : > BEGIN PAGE = 0
ramfuncs : LOAD = FLASHB2,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_SIZE(_RamfuncsLoadSize),
RUN_START(_RamfuncsRunStart),
PAGE = 0

csmpasswds : > CSM_PWL_P0 PAGE = 0
csm_rsvd : > CSM_RSVD PAGE = 0

/* Allocate uninitalized data sections: */
.stack : > RAMM0 PAGE = 1
.ebss : > RAML23 PAGE = 1
.esysmem : > RAML23 PAGE = 1

/* Initalized sections go in Flash */
/* For SDFlash to program these, they must be allocated to page 0 */
.econst : > FLASHCDEFGH PAGE = 0
.switch : > FLASHCDEFGH PAGE = 0

/* Allocate IQ math areas: */
IQmath : > FLASHCDEFGH PAGE = 0 /* Math Code */
IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
elvike
1楼-- · 2019-03-24 14:50
 精彩回答 2  元偷偷看……
ltbytyn
2楼-- · 2019-03-24 15:19
< :TI_MSP430_内容页_SA7 --> 同意楼上观点。分配RAM不够时会报错。

一周热门 更多>

相关问题

    相关文章