文档详情

单片机结构和工作原理分解课件.ppt

发布:2024-09-17约6.66千字共72页下载文档
文本预览下载声明

单片机原理与应用

第2章MCS-51系列单片机结构和工作原理

MCS-51是指由美国Intel公司生产的一系列单片机的总称,这一系列单片机包括了许多型号,如8031,8051,8751,8032,8052,8752等。其中8051是最早生产、最典型的产品。MCS-51系列的其他单片机,都是在以8051为内核的基础上,进行了功能的增加以及外围接口的改变。因此,人们习惯于用8051来称呼MCS-51系列单片机。

MCS-51系列片机共有十多种芯片,分两大系列,即51子系列与52子系列,并以芯片型号的末位数字最志。它的内部构基本相同,其中51子系列是基本型,52子系列是增型。MCS-51系列片机各种芯片的技指表2-1。

表2-1MCS-51系列片机芯片技指

?两个16位定时/计数器(T0、T1)。

?可寻址64KB外部数据存储空间和64KB外部程序存储器的控制电路。?1个可编程的并行I/O端口、4个8位并行I/O端口(P0~P3)。?具有5个中断源、2个优先级的中断结构。

8051的CPU主要由运算器和控制器成?控制器包括程序计数器PC、程序地址寄存器、指令寄存器IR、指令译码器、条件转移逻辑电路及定时控制逻辑电路。?其功能是控制指令的读出、译码和执行,对指令的执行过程进行定时控制,并根据执行结果决定是否分支转移。

8051单片机的CPU结构

?运算器的功能是进行算术、逻辑运算、位变量?主要由算术逻辑运算单元ALU、寄存器A、寄存器B、程序状态字寄存器PSW组成。

算术逻辑运算单元用来完成二进制书的四则运算和布尔代数的逻辑运算,并将结果送带累加器A和B寄存器等,将运算的状态送程序状态字PSW的相应标志位。

累加器A是8位通用寄存器,是CPU中使用最频繁的寄存器。它用于向ALU提供操作数和存放运算的结果。在运算时将一个操作数经过暂存器送至ALU,与另外一个来自暂存器的操作数在ALU中进行运算,运算结果再送回累加器A。

寄存器B又称为乘法寄存器,它与累加器A协同工作,可进行乘法操作和除法操作。在乘除指令中运用到寄存器B,乘法指令中的两个操作数分别取自于A、B寄存器,其结果也存放在A、B寄存器中,A存放乘积的低8位,B存放乘积的高8位;除法指令中,被除数取自A,除数取自B,进行运算后,商数存放于A,余数存放于B。在一般状态下寄存器B也可作为普通的寄存器使用。

程序状态字PSW是一个8位寄存器,用于指示指令执行后的状态信息,相当于一般微处理器的标志寄存器。其有关位用来表示ALU操作的结果状态或CPU的工作状态,供程序查询和判别,其各位的含义见表2-2,其中D1位未定义。

地址PSW.7:0D7HPSW.6:0D6HPSW.2:0D2HPSW.0:0D0HPSW.5:0D5HPSW.1:0D1HPSW.4:0D4HPSW.3:0D3H表2-3PSW各位功能

?CY(PSW.7):进位标志位,也可以记为C。在进行算术运算时,它是累加器A的进位位。如果操作位在最高位有进位(加法)或借位(减法)时置1,否则清0。?AC(PSW.6):辅助进位标志。它是低半字节的进位位(累加器A中的A3位向A4位进位),主要用于BCD码调整。低四位有进位(加法)或者向高四位有借位(减法),AC位被置1,否则清0。?F0(PSW.5):用户定义的状态标志位。可以通过软件对它置位、复位或者测试,以控制程序的流向。

?RS1、RS0(PSW.4、PSW.3):工作寄存器区选择控制位?8051共有8个8位的工作寄存器R0~R7。可以用软件来置位或者清零,以确定当前使用的工作寄存器组。用户可以通过改变RS1和RS0的状态来决定R0~R7的实际物理地址。?RS1和RS0与工作寄存器R0~R7的物理地址之间的关系见表2-4。

00H-07H08H-0FH10H-17H18H-1FH

?OV(PSW.2):溢出标志位。当执行运算指令时,由硬件置位或清除,以指示运算是否产生溢出,OV置位表示运算结果超出了目的寄存器A所能表示的带符号数的范围(一128~+127)。若以Ci表示位i向位i+l有进位,则OV=C6⊕C7;当位6向位7有进位(借位)而位7不向CY进位(借位)时;或当位7向C进位(借位)而位6不向位7进位(借位)时OV标志置位,表示带符号数运算时运算结果是错误的;否则,清除OV标志,运算结果正确。

对于MUL乘法,当A、B两个乘数的积超过255时OV置位;否则,OV=0。因此,若OV=0时,只需从A寄存器中取积;若OV=1时,则需从B、A寄存器对中取积。对于DIV除法,若除数为0时,OV=1;否则,OV=0。?P(PSW.0):奇偶标志位每个指令周期都由硬件来置位或清零,以表示累加器A中1的个数的奇偶性。若1的个数为奇数,则P置1;若1的

显示全部
相似文档