找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3174|回复: 5
打印 上一主题 下一主题
收起左侧

51单片机定义数组外部RAM int xdata a[100]的问题

[复制链接]
跳转到指定楼层
楼主
ID:319537 发表于 2018-11-2 08:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机比如我定义一个数组int a[100];就会报错,改成int xdata a[100];就不会报错,51单片机不都没扩展外部RAM吗,程序可以正常运行怎么回事?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:308437 发表于 2018-11-2 08:47 | 只看该作者
“我们用的 51 系列的单片机都是带扩展
片内 RAM 的,即 RAM 是从 0x00~0xFF 共 256 个字节。片外 RAM 最大可以扩展到 0x0000~
0xFFFF 共 64K 字节。这里有一点大家要明白,片内 RAM 和片外 RAM 的地址不是连起来的,
片内是从 0x00 开始,片外也是从 0x0000 开始的。还有一点,片内和片外这两个名词来自于
早期的 51 单片机,分别指在芯片内部和芯片外部,但现在几乎所有的 51 单片机芯片内部都
是集成了片外 RAM 的,而真正的芯片外扩展则很少用到了,虽然它还叫片外 RAM,但实际
上它现在也是在单片机芯片内部的,我们的 STC89C52 就是这样。”---金沙滩工作室

评分

参与人数 1黑币 +60 收起 理由
admin + 60 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:308437 发表于 2018-11-2 08:49 | 只看该作者
简答就是,时代进步了,当初的那种51和你说的那样,是没有片外的。现在内部集成“片外”
回复

使用道具 举报

地板
ID:94031 发表于 2018-11-2 09:07 | 只看该作者
有些改进型51片内有 xdata,比如c8051f系列。
回复

使用道具 举报

5#
ID:415069 发表于 2018-11-2 14:33 | 只看该作者
你用的是什么单片机?找手册看
回复

使用道具 举报

6#
ID:319537 发表于 2019-4-9 13:18 | 只看该作者
谢谢大家
我懂了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表