打印

求助!关于CSTACK。

[复制链接]
5712|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Mindzjb|  楼主 | 2010-8-25 09:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Mindzjb 于 2010-8-25 09:50 编辑

使用IAR5.4软件,编译程序的时候没有错误,调试时出现如下错误:
The stack pointer for stack 'CSTACK' (currently 0x00000000) is outside the stack range (0x10001F00 to 0x10002000)
请教应该如何设置!
另外,安装好的IAR5.5不能编译,也没有警告,这又是为什么啊?
谢谢!

相关帖子

沙发
llf021421| | 2010-8-28 13:33 | 只看该作者
我也遇到了相同的问题,今天试着解决看看

使用特权

评论回复
板凳
llf021421| | 2010-8-29 10:25 | 只看该作者
我的问题已经解决了,我出问题的原因是这样的:
我的是at91sam9261芯片,用它来驱动lcd,当lcd帧缓存放在0x20100000地址时,发现出现CSTACK这个问题,后来我看了一下SDRAM的设置,发现0x20100000这个是我定义的sdram的首地址,另外查看map文件查看程序链接之后各个段,模块的分配地址发现从0x20100000到0x20130000地址之内都有程序的数据段和代码段在那里。后来我把lcd帧缓存设置成0x20130000这个问题就解决了。
因为我是在外部sdram调试的,所以全部的数据都保存在sdram中,当在程序中设置帧地址的时候,要注意不要造成数据与程序模块地址范围的覆盖。
不知你的情况是不是这样的。

使用特权

评论回复
地板
499734424| | 2011-8-30 21:12 | 只看该作者
3# llf021421 另外查看map文件查看程序链接之后各个段,模块的分配地址发现从0x20100000到0x20130000地址之内都有程序的数据段和代码段在那里。




如何看得出 地址之内都有程序的数据段和代码段在那里???

使用特权

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

本版积分规则

0

主题

2

帖子

1

粉丝