1-3解剖单片机.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1-3解剖单片机

1-3 解剖单片机 我们编程直接打交道的硬件对象是单片机的存储器,可以分为两大类:(1)只读存储器ROM(Read Only Memory)(2)随机存储器RAM(Random Access Memory)。由于ROM用来存放单片机程序,因此也称“程序存储器”;而由于RAM用来存放程序运行中产生的临时数据,因此也称“数据存储器”。 而单片机内置的ROM和RAM数量有限,如有需要可以扩展,因此有片内ROM、片外ROM、片内RAM和片外RAM之分。 ROM和RAM的每一个存储单元都通过固定的地址来访问,而单片机片内外所有的存储器可划分为三个存储空间:ROM、片内RAM、片外RAM,分别通过不同的指令进行访问。 1.程序存储器ROM ROM是单片机用来存放程序指令的存储空间,寻址范围为0000H~FFFFH,共计64KB,但AT89C51内部仅集成4KB的ROM(0000H~0FFFH),余下60KB的ROM可通过片外扩充。 图1 ROM地址示意图 图2 ROM配置 其中,程序存储器低端的一些地址被固定地用作特定的入口地址: 0000H:单片机复位后的入口地址; 0003H:外部中断0的中断服务程序入口地址; 000BH:定时/计数器0溢出中断服务程序入口地址; 0013H:外部中断1的中断服务程序入口地址; 001BH:定时/计数器1溢出中断服务程序入口地址; 0023H:串行口的中断服务程序入口地址。 所以,单片机程序的主程序一般从ROM的0030H开始写入。 2.片内RAM 片内RAM是单片机用来存放单片机运行时产生的临时数据的存储空间,共计256B,基本可按下图划分。 (1)片内RAM的低128B单元 片内RAM的低128B单元的地址为00H~7FH,分为三个区域:工作寄存器区、位寻址区、用户RAM区。 ①工作寄存器区: 00H~07H:工作寄存器0区(R0~R7); 08H~0FH:工作寄存器1区(R0~R7); 10H~17H:工作寄存器2区(R0~R7); 18H~1FH:工作寄存器3区(R0~R7)。 只能由一组工作寄存器被CPU选中使用,到底选哪一组由专用寄存器PSW来决定(后面介绍)。 ②位寻址区: 20H~2FH共计16B,128位,可作字节操作,也可作位操作;位寻址有两种寻址方式,如下表所示: 例如:对20H进行字节操作(20H)←3AH; 对21H.1进行置位(21H.1)←1,与对位地址09H置位效果一样 (09H)←1 位处理也叫布尔处理。 ③用户RAM区 30H~7FH共计80B,可由用户随意作字节访问。 (2)片内RAM的高128B 片内RAM单元的高128B单元的地址为80H~FFH,其中只有21个SFR(Special Function Register特殊功能寄存器)可访问,其余空间不对用户开放。 单片机内部集成了许多模块,比如中断系统、定时器、串行通信模块等,SFR就好比是这些模块的开关,用户通过访问这些SFR间接控制相应的模块。SFR具体如下表所示。 先介绍几个常用SFR: (1)ACC:累加器。通常用A表示,所有的运算类指令都离不开它; (2)B:作乘法、除法运算时用来存放乘数与除数; (3)PSW:程序状态字寄存器。每一个位都有特殊用途,见下图: 例1-2:57H+3AH)运算后,半进位标志位就会被置1。 ③F0:用户标志位。由用户自定义; ④RS1、RS0:工作寄存器组选择位。具体见下表; (4)DPTR:数据指针。由DPH作为高字节,DPL作为低字节组成十六位寄存器,具有双重功能(i)访问片外RAM中的单元时作为数据指针;(ii)作通用寄存器使用。 (5)P0,P1,P2,P3:四个并行I/O口的寄存器。与四组同名I/O口存在映射关系,对P0~P3寄存器的操作效果等同于对同名I/O口进行操作。 (6)SP:堆栈指针。堆栈口诀“先进后出,后进先出”,见下图。 *(7)PC:程序指针。注意,此寄存器不在片内RAM寻址空间内,用户不能直接访问,但能通过相应指令间接访问。十六位寄存器,用于指示ROM当前执行指令的地址。复位时指向0000H。 3、片外RAM(仅作了解) 地址范围为0000H~FFFFH,最大支持64KB。与ROM不同,片外RAM与片内RAM的访问指令是不同的。 * __ EA=0 外部 外部 __ EA=1 内部 0000H 0FFFH 1000H FFFFH _____ PSEN 0000H 0001H 0002H 0

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档