- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《51单片机存储结构》.pdf
同为嵌入式培训 内部受控 单片机存储结构及外部扩展
一、 单片机存储器结构
51 单片机在物理结构上有四个存储空间:
1、片内程序存储器 (其空间大小根据具体型号而定)
2、片外程序存储器 (最大可扩展 64K 字节)
3、片内数据存储器 (256 字节)
4、片外数据存储器 (最大可扩展 64K)
注意:片内程序存储器与片外程序存储器为统一编址,稍后将具体讲解。
在访问不同的存储空间时,由不同形式的指令加以区分,从而选择不同的存
储器空间。
程序存储器
一个微处理器能够执行某种任务,除了硬件支持外,还需要它们运行的软件,
也就是程序员所编写的程序。那么程序员编写的程序就存放在微处理器的程序存
储器中,也就是我们经常所说的 ROM。程序相当于给微处理器处理问题的一系
- 1 -
同为嵌入式培训 内部受控 单片机存储结构及外部扩展
列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存
放于程序存储器中。
51 单片机具有 64k 字节的程序存储器寻址空间,它是用于存放用户程序、
数据和表格等信息,访问片内、片外 ROM 的指令都为 MOVC。51 单片机正常
运行时,EA 引脚则需接高电平,使 CPU 先从内部的程序存储中读取程序,当
PC 值超过内部 ROM 的容量时,才会转向外部的程序存储器读取程序。
当 EA=1 时,程序从片内 ROM 开始执行,当 PC 值超过片内 ROM 容量时
会自动转向外部 ROM 空间。
当 EA=0 时,程序直接从外部存储器开始执行。
8051 片内有 4kB 的程序存储单元,其地址为 0000H—0FFFH,单片机启
动复位后,程序计数器的内容为 0000H,所以系统将从 0000H 单元开始执行
程序。但在程序存储中有些特殊的单元,这在使用中应加以注意:
其中一组特殊是 0000H—0002H 单元,系统复位后,PC 为 0000H,单
片机从 0000H 单元开始执行程序,如果程序不是从 0000H 单元开始,则应在
这三个单元中存放一条无条件转移指令,让 CPU 直接去执行用户指定的程序。
例:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT0
MAIN:MOV R0,#40H
.
- 2 -
同为嵌入式培训 内部受控 单片机存储结构及外部扩展
.
INT0: MOV TH0,#1CH
.
.
另一组特殊单元是 0003H—002AH,这 40 个单元各有用途,它们被均匀
地分为五段,每段 8 字节空间,它们的定义如下:
0003H—000AH 外部中断 0 中断地址区。
000BH—0012H 定时/计数器 0 中断地址区。
0013H—001AH 外部中断 1 中断地址区。
001BH—0022H 定时/计数器 1 中断地址区。
0023H—002AH 串行中断地址区。
可见以上的 40 个单元是专门用于存放中断处理程序的地址单元,中断响应
后,按中断的类型,自动转到各自的中断区去执行程序。从上面可以看出,每个
中断服务程序只有 8 个字节单元,用 8 个字节来存放一个中断服务程序显然是
不可能的。因此以上地址单元不能用于存放程序的其他内容,只能存放中断服务
程序。但是通常情况下,我们是在中断响应的地址区安放
文档评论(0)