两个小问题请教

[复制链接]
1968|5
 楼主| jlgcumt 发表于 2011-12-7 19:53 | 显示全部楼层 |阅读模式
1、51单片机(我用的是C8051F120)的SP(堆栈)能放在片外ram里面,看startup.a51里面那个堆栈重入啥意思,看不明白!
2、51单片机外扩RAM的时候初始化要放在startup.a51还是在main里面初始化也行。假如变量数量很多要用到外扩的RAM
流行音乐 发表于 2011-12-7 21:26 | 显示全部楼层
“51单片机(我用的是C8051F120)的SP(堆栈)能放在片外ram里面”,楼主你这是疑问句还是肯定句?
 楼主| jlgcumt 发表于 2011-12-8 18:41 | 显示全部楼层
忘了加问号了!
貌似不能,SP赋值最多256,但看那个STARTUP.A51里面怎么有XRAM  堆栈指针重入?
yewuyi 发表于 2011-12-8 20:16 | 显示全部楼层
如果支持RAM外扩的话,也许是可以的。
Cortex-M0 发表于 2011-12-8 20:20 | 显示全部楼层
放在外面只能用软件堆栈了
 楼主| jlgcumt 发表于 2011-12-12 19:26 | 显示全部楼层
关于第二个问题的解决方案:自己想的,不知道对不对

把外扩Ram的初始化代码采用compact模式编译,这样防止编译器编译时把变量放到外扩的RAM里,估计就行了吧?不知道到对不对?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:善攻者,动于九天之上,善守者,藏于九地之下!

183

主题

733

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部