单片机原理及精华总结(4)

2019-04-23 14:50

EA接低电平,则机器自动使用片外ROM,这一关系如图2-9(a)所示.由于803l片内无ROM,故它的EA应接地。 (3) 片外RAM

MCS-51的片内RAM容量有128个存储单元,可以用来存放操作数。操作结果和实时数据。如果片内RAM容量太小,不能满足控制需要,也可以外接外部RAM。但外接外部RAM的最大容量不能超过64KB,地址范围为0000H~FFFFH。

MCS-51可以对片外RAM中数据进行读/写。读/写指令共有如下四条。前两条用于把片外RAM中数据读入累加器A,后两条用于把累加器A中数据写入片外RAM中。

MOVX A, @R1 ;A←(Ri) MOVX A, @DPTR ;A←(DPTR) MOVX @Ri, A ;A→(Ri) MOVX @DPTR, A ;A→(DPTR) (4) 片内RAM

由表2-2可见,8052AH/8752BH的片内RAM共有256个存储单元.地址范围为00H—FFH其中,00H~7FH为片内RAM的低]28字节区.80H—FFH为片内RAM的高128字节区。由于片内RAM的高128字节区和特殊功能寄存器SFR的物理地址区产生冲突,故8052AH/8752BH的设计师们采用不同的寻址方式对它们分别存取。即8052AH/8752BH采用间接寻址方式存取片内RAM的高128字节区,采用直接寻址方式存取SFR(Special Function Register,特殊功能寄存器)区。例如,若要把片内RAM的83H中内容存人累加器A,则应采用如下两条指令,因为MOV A,@R0为间接寻址指令。

MOV R0, #83H ;R0←83H A4(JV A, @R0 ;A←(83H) 若要把DPH中内容送入累加器A,则可采用如下一条直接寻址指令,因为DPH寄存器的物理地址是83H(见表2-4),这两个83H显然不是同一个存储单元。

MOV A, 83H ;A←DPH

00H~7FH是片内RAM的低128字节区。由于这个地址范围和SFR的物理地址不产生冲突,因此MC5-51既可以采用直接寻址方式对它寻址,也可以采用间接寻址方式寻址。对于8051/8031,除无片内RAM的高128字节区外,其余与8052AH/8752BH没有任何区别。

在00H-07FH这个地址空间中,根据不同功能又可分为工作寄存器区.位寻址区和便笺区等三个子区域,如图2-10所示。

- 16 -

图2-10 8051内部RAM分配

1)工作寄存器区(00H~1FH) 这32个RAM单元共分四组,每组占8个RAM单元,分别用代号R0~R7表示。R0~R7可以指向四组中的任一组,由PSW中RS1RS0状态决定,如表2-3所列。

2)位寻址区(20H~2FH) 这16个RAM单元具有双重功能。它们既可以像普通RAM单元一样按字节存取,也可以对每个RAM单元中的任何一位单独存取,这就是位寻址。

20H~2FH用作位寻址时,共有16×8=128位,每位都分配了一个特定地址,即00H~7FH。这些地址称为位地址,如图2-10所示。位地址在位寻址指令中使用。例如,欲把2FH单元中最高位(位地址为7FH)置位成1,则可使用如下位置位指令

SETB 7FH ;7FH←1

其中:SETB为位置位指令的操作码。

位地址的另一种表示方法是采用字节地址和位数相结合的表示法00H可以表示成20H,0,位地址1AH可以表示成23H.2,等等。

- 17 -

3)便笺区(30H~7FH) 便笺区共有80个RAM单元,用于存放用户数据或作堆栈区使用。MCS-51对便笺区中每个RAM单元是按字节存取的。

(5) 特殊功能寄存器SFR(80H-FFH)

特殊功能寄存器是指有特殊用途的寄存器集合。SFR的实际个数和单片机型号有关:8051或8031的SFR有21个,8052的SFR有26个。每个SFR占有一个RAM单元,它们离散地分布在80H-FFH地址范围内,不为SFR占用的RAM单元实际上并不存在,访问它们也是没有意义的,如表2-4所列。

表2-4 特殊功能寄存器一览表

对于8051,已对累加器A、B寄存器、PSW、SP和DPTR等作过介绍。在21个SFR中,用户可以通过直接寻址指令对它们进行字节存取,也可以对带有*的11

- 18 -

个字节寄存器中的每一位进行位寻址。在字节型寻址指令中,直接地址的表示方法有两种:一种是使用物理地址,如累加器A要用E0H、B寄存器用F0H.SP用81H,等等;另一种是采用表2-3中的寄存器标号,如累加器A要用ACC,B寄存器用B、程序状态字寄存器用PSW,等等。这两种表示方法中,采用后一种方法比较普遍,因为它们比较容易为人们所记忆。

在SFR中.可以位寻址的寄存器有11个,共有位地址88个,其中5个未用.其余83个位地址离散地分布于80H~FFH范围内,如图2-11所示。

图2-11 SFR中的位地址分布

2.2.1.3 MCS-5l内部并行I/O端口

8031有4个并行I/O端口,分别命名为P0,P1,P2和P3。这4个并行I/O端口的内部结构如图2-12所示。每个端口皆有8位,但图中只画出了其中的一位。由图可见,每个I/O端口都由一个8位数据锁存器和—个8位数据缓冲器组成。其中,8位数据锁存器和端口号P0,P1,P2和P3同名,属于21个特殊功能寄存器中的4个,用于存放需要输出的数据,8个数据缓冲器用于对端口引脚上输入数据进行缓冲,但不能锁存,因此各引脚上输入的数据必须一直保持到CPU把它读走为止。

- 19 -

- 20 -


单片机原理及精华总结(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《材料力学》附录I++截面的几何性质+习题解

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: