打印

RAM不够

[复制链接]
634|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pangb|  楼主 | 2014-11-4 11:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机RAM不够,外部扩展SRAM。在KEIL C下开发编译,如何设置让编译器知道有外部扩展RAM,从而编译出MOVX指令!
沙发
chenjunt| | 2014-11-4 11:48 | 只看该作者
用xdata来指定变量区域;
或者使用large模式。

使用特权

评论回复
板凳
ousj| | 2014-11-4 11:49 | 只看该作者
加XDATA指定访问的数据在片外64K字节数据存储器内,用MOVX指令访问,再去看C51相关说明

使用特权

评论回复
地板
pangb|  楼主 | 2014-11-4 11:50 | 只看该作者
ousj 发表于 2014-11-4 11:49
加XDATA指定访问的数据在片外64K字节数据存储器内,用MOVX指令访问,再去看C51相关说明 ...



你的意思是只要用XDATA定义变量 编译时就会自动生成了MOVX指令吗?另外如果的device只有内部RAM,没有XDATA,代码里强制加入XDATA,会导致编译器编译不过嘛?

使用特权

评论回复
5
morrisk| | 2014-11-4 11:54 | 只看该作者
没有外部SRAM就不要用XDATA,只有用到外部SRAM才用XDATA,这时候就会生成MOVX,C51有三种存储器模式是SMALL,COMPACT,LARGE;更详细的你找本关于C51全面点书看看,

使用特权

评论回复
6
pangb|  楼主 | 2014-11-4 11:54 | 只看该作者
到底是啥问题。。。

使用特权

评论回复
7
小小猫咪| | 2014-11-4 11:56 | 只看该作者
外挂RAM是硬件问题

使用特权

评论回复
8
kangzj| | 2014-11-4 11:56 | 只看该作者
这个确实很难说

使用特权

评论回复
9
zwll| | 2014-11-4 11:58 | 只看该作者
淘汰掉51,外扩一个成本已经够买个不错的ARM了;

使用特权

评论回复
10
pangb|  楼主 | 2014-11-4 11:59 | 只看该作者
哦,我再思考一下

使用特权

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

本版积分规则

701

主题

7643

帖子

6

粉丝