IAR 编译器的相关问题(MSP 430 5438)

IAR 编译器的相关问题(MSP 430 5438),第1张

"+114 bytes shared"或linking后的"+114 bytes absolute"指的是您在程序中有144bytes 使尺配行用@ operator 或 #pragma location=operator 或__no_init volatile语法定义的数据。也可以说是可以在汇编中定义的数据。举例:P1OUT在430头文陵哗件中就用到了上述语法,当您读写P1OUT时,编译器和链接器就认为您使用了一卖睁个上述sahred/absolute数据。

编译器和链接器并不能真正地辨认出什么是RAM什么是Flash,它们使用DATA(没有指定固定的数据)和CONST/CODE(有指定固定的数据)概念来工作。

特意咨询了IAR员工,答对给分啊!

以msp430f135为例,它是512bytes的ram,起始地腔衡址为200h,终止地址为3ffh,所以御圆尘它的变量是从200h开始,向3ffh方向存放,而堆栈是从3ffh开始,向200h方向压栈。

当变量存储空间和堆栈最大占用空间在中间相遇时,就发生了堆栈溢出。

1

当然是烧程序镇禅到目标板里呀


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12354765.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存