MSP430的 G2553换2452,出错了! error #10099-D

[复制链接]
2871|23
手机看帖
扫描二维码
随时随地手机跟帖
pywmiss|  楼主 | 2016-10-19 15:05 | 显示全部楼层 |阅读模式
"../lnk_msp430g2452.cmd", line 97: error #10099-D: program will not fit into available memory.  placement with alignment fails for section ".cinit" size 0xc7 .  Available memory ranges:
   FLASH        size: 0x0          unused: 0x0          max hole: 0x0      
==程序原来是在2553写的...想换到2452上
==2452相对2553会小一些...有查了一下资料..
==出错之后在网络上查说要修改...lnk_msp430g2452.cmd这个文件...但是不知道怎么改啊....看晕了..
求大侠指点一下!
MEMORY
{
    SFR                     : origin = 0x0000, length = 0x0010
    PERIPHERALS_8BIT        : origin = 0x0010, length = 0x00F0
    PERIPHERALS_16BIT       : origin = 0x0100, length = 0x0100
    RAM                     : origin = 0x0200, length = 0x0100
    INFOA                   : origin = 0x10C0, length = 0x0040
    INFOB                   : origin = 0x1080, length = 0x0040
    INFOC                   : origin = 0x1040, length = 0x0040
    INFOD                   : origin = 0x1000, length = 0x0040
    FLASH                   : origin = 0xE000, length = 0x1FE0
//    FLASH                   : origin = 0xFBE0, length = 0x0400;
    INT00                   : origin = 0xFFE0, length = 0x0002
    INT01                   : origin = 0xFFE2, length = 0x0002
    INT02                   : origin = 0xFFE4, length = 0x0002
    INT03                   : origin = 0xFFE6, length = 0x0002
    INT04                   : origin = 0xFFE8, length = 0x0002
    INT05                   : origin = 0xFFEA, length = 0x0002
    INT06                   : origin = 0xFFEC, length = 0x0002
    INT07                   : origin = 0xFFEE, length = 0x0002
    INT08                   : origin = 0xFFF0, length = 0x0002
    INT09                   : origin = 0xFFF2, length = 0x0002
    INT10                   : origin = 0xFFF4, length = 0x0002
    INT11                   : origin = 0xFFF6, length = 0x0002
    INT12                   : origin = 0xFFF8, length = 0x0002
    INT13                   : origin = 0xFFFA, length = 0x0002
    INT14                   : origin = 0xFFFC, length = 0x0002
    RESET                   : origin = 0xFFFE, length = 0x0002
}

/****************************************************************************/
/* Specify the sections allocation into memory                              */
/****************************************************************************/

SECTIONS
{
    .bss        : {} > RAM                  /* Global & static vars              */
    .data       : {} > RAM                  /* Global & static vars              */
    .TI.noinit  : {} > RAM                  /* For #pragma noinit                */
    .sysmem     : {} > RAM                  /* Dynamic memory allocation area    */
    .stack      : {} > RAM (HIGH)           /* Software system stack             */

    .text       : {} > FLASH                /* Code                              */
    .cinit      : {} > FLASH                /* Initialization tables             */
    .const      : {} > FLASH                /* Constant data                     */
    .cio        : {} > RAM                  /* C I/O Buffer                      */

    .pinit      : {} > FLASH                /* C++ Constructor tables            */
    .init_array : {} > FLASH                /* C++ Constructor tables            */
    .mspabi.exidx : {} > FLASH              /* C++ Constructor tables            */
    .mspabi.extab : {} > FLASH              /* C++ Constructor tables            */

    .infoA     : {} > INFOA              /* MSP430 INFO FLASH Memory segments */
    .infoB     : {} > INFOB
    .infoC     : {} > INFOC
    .infoD     : {} > INFOD

    /* MSP430 Interrupt vectors          */
    .int00       : {}               > INT00
    .int01       : {}               > INT01
    PORT1        : { * ( .int02 ) } > INT02 type = VECT_INIT
    PORT2        : { * ( .int03 ) } > INT03 type = VECT_INIT
    USI          : { * ( .int04 ) } > INT04 type = VECT_INIT
    ADC10        : { * ( .int05 ) } > INT05 type = VECT_INIT
    .int06       : {}               > INT06
    .int07       : {}               > INT07
    TIMER0_A1    : { * ( .int08 ) } > INT08 type = VECT_INIT
    TIMER0_A0    : { * ( .int09 ) } > INT09 type = VECT_INIT
    WDT          : { * ( .int10 ) } > INT10 type = VECT_INIT
    COMPARATORA   : { * ( .int11 ) } > INT11 type = VECT_INIT
    .int12       : {}               > INT12
    .int13       : {}               > INT13
    NMI          : { * ( .int14 ) } > INT14 type = VECT_INIT
    .reset       : {}               > RESET  /* MSP430 Reset vector         */
}

/****************************************************************************/
/* Include peripherals memory map                                           */
/****************************************************************************/

-l msp430g2452.cmd

相关帖子

pywmiss|  楼主 | 2016-10-19 15:09 | 显示全部楼层
"../lnk_msp430g2452.cmd", line 94: error #10099-D: program will not fit into available memory.  run placement with alignment fails for section ".stack" size 0x50 .  Available memory ranges:
   RAM          size: 0x100        unused: 0x2c         max hole: 0x2b      
这个才是程序的错误提示..

使用特权

评论回复
dirtwillfly| | 2016-10-19 15:21 | 显示全部楼层
不用那么麻烦,在工程的设置里改一下堆栈的大小就可以了

使用特权

评论回复
pywmiss|  楼主 | 2016-10-19 15:35 | 显示全部楼层
dirtwillfly 发表于 2016-10-19 15:21
不用那么麻烦,在工程的设置里改一下堆栈的大小就可以了

刚刚查了一下...的确是什么堆栈....
怎么设置呢??请明示

使用特权

评论回复
pywmiss|  楼主 | 2016-10-19 16:24 | 显示全部楼层
呵呵..搞定了...在网络上找了一下...谢谢灰版的指路..呵呵
在你的工程下,右键,点Properites->MSP430 Linker ->basic Options ->Set C system stack size 就可以改了
另外..因为我之前的都是用汇编..C语言没学好...现在把那些变量改成CONST...stack size就变小了..

使用特权

评论回复
xiaolong12| | 2016-10-19 20:18 | 显示全部楼层
用的是CCS还是IAR呢?应该直接换.cmd文件就好了吧。

使用特权

评论回复
iyoum| | 2016-10-19 23:21 | 显示全部楼层
.cinit 删除了吗?

使用特权

评论回复
iyoum| | 2016-10-19 23:22 | 显示全部楼层
ccs环境配置的问题。

使用特权

评论回复
pywmiss|  楼主 | 2016-10-20 08:58 | 显示全部楼层
xiaolong12 发表于 2016-10-19 20:18
用的是CCS还是IAR呢?应该直接换.cmd文件就好了吧。

用的是CCS
已经搞了..看5楼回复
谢谢回复

使用特权

评论回复
pywmiss|  楼主 | 2016-10-20 08:59 | 显示全部楼层
iyoum 发表于 2016-10-19 23:21
.cinit 删除了吗?

.cinit  是什么?
问题已经搞了..看5楼回复
谢谢!

使用特权

评论回复
pywmiss|  楼主 | 2016-10-20 09:02 | 显示全部楼层
iyoum 发表于 2016-10-19 23:22
ccs环境配置的问题。

已经搞了啦..请看5楼回复
谢谢支持

使用特权

评论回复
soodesyt| | 2016-10-20 17:12 | 显示全部楼层
看看那个定义能不能找到

使用特权

评论回复
soodesyt| | 2016-10-20 17:13 | 显示全部楼层
在CCS删除cinit试试看。

使用特权

评论回复
zhangbo1985| | 2016-10-20 21:02 | 显示全部楼层
这个报错的很正常,主要先看下库函数的一样不?

使用特权

评论回复
zhangbo1985| | 2016-10-20 21:03 | 显示全部楼层
调用的芯片的库函数肯定是不一样的。。芯片型号都不一样的,,至少也不是一个系列的吧

使用特权

评论回复
pywmiss|  楼主 | 2016-10-21 08:38 | 显示全部楼层
soodesyt 发表于 2016-10-20 17:12
看看那个定义能不能找到

已经搞了啦..请看5楼回复
谢谢支持

使用特权

评论回复
pywmiss|  楼主 | 2016-10-21 08:38 | 显示全部楼层
zhangbo1985 发表于 2016-10-20 21:03
调用的芯片的库函数肯定是不一样的。。芯片型号都不一样的,,至少也不是一个系列的吧 ...

芯片已经换了.可以正常使用...
已经搞定了啦..请看5楼回复
谢谢支持

使用特权

评论回复
pmp| | 2016-10-21 23:24 | 显示全部楼层
pywmiss 发表于 2016-10-19 15:09
"../lnk_msp430g2452.cmd", line 94: error #10099-D: program will not fit into available memory.  run  ...

CMD文件不一样吧

使用特权

评论回复
pmp| | 2016-10-21 23:26 | 显示全部楼层
pywmiss 发表于 2016-10-19 15:09
"../lnk_msp430g2452.cmd", line 94: error #10099-D: program will not fit into available memory.  run  ...

试试IAR,应该不会出现这个问题。

使用特权

评论回复
mnynt121| | 2016-10-22 22:55 | 显示全部楼层
G2553要小一些吧,不能用cmd

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

68

主题

792

帖子

6

粉丝