第2章89C51单片机硬件结构和原理教程

上传人:e****s 文档编号:243710959 上传时间:2024-09-29 格式:PPT 页数:134 大小:1.43MB
返回 下载 相关 举报
第2章89C51单片机硬件结构和原理教程_第1页
第1页 / 共134页
第2章89C51单片机硬件结构和原理教程_第2页
第2页 / 共134页
第2章89C51单片机硬件结构和原理教程_第3页
第3页 / 共134页
点击查看更多>>
资源描述
单击以编辑母版标题样式,单击以编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,9/29/2024,目 录,第一章 微机基础知识,第二章,89C51,单片机的结构和原理,第三章,89C51,指令系统,第四章 汇编语言程序设计知识,第五章 中断系统,第六章 定时器及应用,第七章,89C51,串行口及通信技术,第八章 单片机小系统片外扩展,第九章 应用系统配置及接口技术,附录,A 89C51,指令系统表,参考资料,Exit,9/29/2024,1,2.1MCS-51,单片机的结构,2.2MCS-51,单片机引脚及其功能,2.389C51,存储器配置,2.4CPU,时序,2.5,复位及复位电路,2.689C51,单片机的低功耗工作方式,返回,第二章MCS-51单片机的结构和原理,2.7,输出,/,输入端口结构,2.8,思考题与习题,9/29/2024,2,2.1MCS-51单片机的结构,2.1.1 MCS-51,单片机的基本组成,2.1.2 MCS-51,单片机内部结构,返回,9/29/2024,3,2.1.1 MCS-51单片机的基本组成,一、组成,二、,MCS-51,系列单片机的性能,返回,9/29/2024,4,一、组成,89C51单片机结构框图,如图2-1所示,返回,9/29/2024,5,89C51单片机结构框图,89C51,CPU,振荡器和时序,OSC,64KB 总线,扩展控制器,数据存储器,256B RAM/SFR,216位,定时器/计数器,可编程I/O,程序存储器,4KBROM,可编程全双工,串行口,外中断,内中断,控制,并行口,串行通信,外部时钟源,外部事件计数,返回,9/29/2024,6,一、组成,一个,8,位 的微处理器,CPU,。,返回,9/29/2024,7,一、组成,用以存放可以读/写的数据,如运算的中间结果、最终结果以及欲显示的数据等。,片内数据存储器,(RAM128B/256B,),:,返回,9/29/2024,8,一、组成,用以存放程序、一些原始数据和表格。但有一些单片机内部不带ROM/EPROM,如8031、8032、80C31等。,片内程序存储器,Flash ROM,(,4KB/8KB,),:,返回,9/29/2024,9,一、组成,每个口可以用作输入,也可以用作输出。,四个,8,位并行,I/O,(,输入,/,输出)接口,P0P3:,返回,9/29/2024,10,一、组成,每个定时/计数器都可以设置成计数方式,用以 对 外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果 实现计算机控制。,两个或三个定时,/,计数器,:,返回,9/29/2024,11,一、组成,可实现单片机与单片机或其它微机之间串行通信。,一个全双工,UART,的串行,I/O,口,:,返回,9/29/2024,12,一、组成,但需外接晶振和电容。,片内振荡器和时钟产生电路,:,返回,9/29/2024,13,一、组成,五个中断源的中断控制系统。,返回,9/29/2024,14,二、MCS-51系列单片机的性能,如,表2-1,所示。表中型号带“C”表示所用的是CMOS工艺,具有功耗低的优点。,返回,9/29/2024,15,MCS-51系列单片机的性能表,返回,9/29/2024,16,2.1.2 MCS-51单片机内部结构,一、结构图,二、结构组成,返回,9/29/2024,17,一、结构图,由,中央处理单元(CPU)、,存储器(ROM及RAM),和,I/O接口,组成。,MCS-51单片机内部结构如,图2-2,所示,。,返回,9/29/2024,18,P0驱动器,P2驱动器,P0锁存器,P2锁存器,RAM地址寄存器,128BRAM,4KB,Flash ROM,B寄存器,暂存器1,暂存器2,ACC,SP,程序地址寄存器,缓冲器,PC增1,PC,DPTR,中断、串行口和定时器,PSW,P1锁存器,P1驱动器,P3锁存器,P3驱动器,定时控制,指令寄存器,指令译码器,OSC,ALU,XTAL1 XTAL2,PSEN,ALE,EA,RET,89C51单片机,内部结构图,返回,9/29/2024,19,二、结构组成,(一)、中央处理单元(,CPU,),(二)、存储器,(三)、,I/O,接口,返回,9/29/2024,20,(一)、中央处理单元(CPU),1运算器,返回,2,控制器,9/29/2024,21,1运算器,(1)8位的ALU:,返回,(2)8位累加器ACC(A):,(3)8位程序状态寄存器PSW:,(4)8位寄存器B:,(5)布尔处理器:,(6)2个8位暂存器:,9/29/2024,22,1运算器,可对,4,位、,8,位、,16,位数据进行操作。,返回,(1)8位的ALU:,9/29/2024,23,1运算器,(2)8位累加器ACC(A):,它经常作为一个运算数经暂存器2进入ALU的输入端,与另一个来自暂存器1的运算数进行运算,运算结果又送回ACC。,返回,9/29/2024,24,1运算器,指示指令执行后的状态信息供程序查询和判别用。,(3)8位程序状态寄存器PSW:,返回,9/29/2024,25,1运算器,(4)8位寄存器B:,在乘除运算时,用来存放一个操作数也用来存放运算后的一部分结果;如不能做乘除运算时,作为通用寄存器。,返回,9/29/2024,26,1运算器,(5)布尔处理器:,专门用于处理位操作的,以PSW中的C为其累加器。,返回,9/29/2024,27,1运算器,(6)2个8位暂存器:,ALU的两个入口处。,返回,9/29/2024,28,2控制器,(1)程序计数器PC(16位),(2)指令寄存器IR及指令译码器ID,(3)振荡器和定时电路,返回,9/29/2024,29,(1)程序计数器PC(16位),由两个8位计数器PCH、PCL组成。,PC是程序的字节地址计数器,PC内容为将要执行的指令地址。,改变PC内容,改变执行的流向。,PC可对64KB的ROM直接寻址,也可对89C51片内RAM寻址。,返回,9/29/2024,30,(2)指令寄存器IR及指令译码器ID,由PC中的内容指定ROM地址,取出来的指令经IR送至ID,由ID对指令译码产生一定序列的控制信号,以执行指令所规定的操作。,返回,9/29/2024,31,(3)振荡器和定时电路,89C51单片机片内有振荡电路,只需外接石英晶体和频率微调电容(2个30pF左右),其频率范围为,12MHz。该信号作为89C51工作的基本节拍即时间的最小单位。,返回,9/29/2024,32,(二)、存储器,1、程序存储器(ROM),2、数据存储器(RAM),返回,9/29/2024,33,1、程序存储器(ROM),地址从,0000H,开始。,用于存放程序和表格常数。,返回,9/29/2024,34,2、数据存储器(RAM),地址为,00H,7FH,。,用于存放运算的中间结果、数据暂存以及数据缓冲等。,这,128B,的,RAM,中有,32,个字节单元可指定为工作寄存器。,片内还有,21,个特殊功能寄存器(,SFR,),,它们同,128,字节,RAM,统一编址,地址为,80H,FFH,。,后面详细介绍。,返回,9/29/2024,35,(三)、I/O接口,89C51,有四个,8,位并行,I/O,接口,P0,P3,。,它们都是双向端口,每个端口各有,8,条,I/O,线。,P0-P3,口四个锁存器同,RAM,统一编址,可作为,SFR,来寻址。,返回,9/29/2024,36,2.2MCS-51单片机引脚及其功能,2.2.1MCS-51单片机引脚,2.2.2 MCS-51单片机引脚功能,返回,9/29/2024,37,2.2.1 89C51单片机引脚,89C51单片机引脚如图2-3所示。,返回,9/29/2024,38,89C51单片机引脚图,返回,9/29/2024,39,2.2.2 89C51单片机引脚功能,一、电源引脚:Vcc和Vss,二、时钟电路引脚:XTAL1和XTAL2,三、控制信号引脚RST、ALE、PSEN和EA,四、I/O端口P0、P1、P2和P3,返回,9/29/2024,40,一、电源引脚:Vcc和Vss,1Vcc(40脚):电源端,为+5V。,2Vss(20脚):接地端。,返回,图2-3,9/29/2024,41,二、时钟电路引脚:,XTAL1和XTAL2,XTAL2(18脚):接外部晶体和微调电容的一端;在89C51 片内它是振荡电路反向放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。89C51/8031正常工作时,该引脚应有脉冲信号输出。,返回,9/29/2024,42,XTAL1(19脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反向放大器的输入端,在采用外部时钟时,该引脚接地。,二、时钟电路引脚:,XTAL1和XTAL2,返回,9/29/2024,43,三、控制信号引脚:,RST、ALE、PSEN和EA,RST/V,PD,(9脚):,RST,:,复位信号输入端,高电平有效。当此输入端保持两个机器周期的高电平时,就可以完成复位操作。,返回,9/29/2024,44,RST/V,PD,(9脚):,V,PD,:,RST,引脚的第二功能,备用电源输入端。当主电源,Vcc,发生故障,降低到低电平规定值时,将,+5V,电源自动接入该引脚,为,RAM,提供备用电源,以保证,RAM,中的信息不丢失,使得复位后能继续正常运行。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,45,ALE/PROG(30脚):,ALE,:,地址锁存允许信号端。正常工作时,该引脚以振荡频率的,1/6,固定输出正脉冲。,CPU,访问片外存储器时,该引脚输出信号作为锁存低,8,位地址的控制信号。它的负载能力为,8,个,LS,型,TTL,负载。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,46,ALE/PROG(30脚):,PROG:是对片内带有4KB EPROM的8751编程写入时的编程脉冲输入端。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,47,PSEN(29脚):,程序存储器允许信号输出端。,在访问片外,ROM,时,定时输出负脉冲作为读片外,ROM,的选通信号,接片外,ROM,的,OE,端。,它的负载能力为,8,个,LS,型,TTL,负载。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,48,EA/V,pp,(31脚):,EA,:,外部程序存储器地址允许输入端。,当该引脚接高电平时,,CPU,访问片内,EPROM/ROM,并执行片内程序存储器中的指令,但当,PC,值超过,0FFFH,(,片内,ROM,为,4KB,),时,将自动转向执行片外,ROM,中的程序。,当该引脚接低电平时,,CPU,只访问片外,EPROM/ROM,并执行外部程序存储器中的程序。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,49,EA/V,pp,(31脚):,V,pp,:对,8751,片内,EPROM,固化编程时,编程电压输入端(,12-21V,)。,三、控制信号引脚:,RST、ALE、PSEN和EA,返回,9/29/2024,50,四、I/O端口P0、P1、P2和P3,1、准双向,2、P0口,3、P1口,4、P2口,5、P3口,返回,9/29/2024,51,1、准双向,当,I/O,口作为输入时,应先向此口锁存器写入全,1,, 此时该口引脚浮空,可作高阻抗输入。,返回,9/29/2024,52,2、P0口:,漏极开路的,8,位准双向,I/O,口,每位能驱动,8,个,LS,型,TTL,负载。,P0,口可作为一个数据输入,/,输出口;,在,CPU,访问片外存储器时,,P0,口为分时复用的低,8,位地址总线和,8,位数据总线。,返回,9/29/2024,53,3、P1口:,带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。,返回,9/29/2024,54,4、P2口:,P2,口:带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。在,CPU,访问片外存储器时,它输出高,8,位地址,。,返回,9/29/2024,55,5、P3口:,带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。,P3,口除作为一般,I/O,口外,每个引脚都有第二功能。,返回,9/29/2024,56,2.389C51存储器配置,2.3.189C51,存储器分类,2.3.2,程序存储器地址空间,2.3.3,数据存储器地址空间,返回,9/29/2024,57,2.3.1 89C51存储器分类,一、物理结构(哈佛结构),二、用户角度,返回,9/29/2024,58,一、物理结构(哈佛结构),89C51存储器,程序存储器ROM,数据存储器ROM,片内程序存储器,片外程序存储器,片内数据存储器,片外数据存储器,返回,9/29/2024,59,二、用户角度,图2-4 89C51存储器配置,9/29/2024,60,二、用户角度,1、片内、外统一编址的64K程序存储器地址空间。CPU访问片内、片外ROM指令用MOVC。,返回,9/29/2024,61,二、用户角度,2、64K的片外数据存储器地址空间。访问片外RAM指令用MOVX。,返回,9/29/2024,62,二、用户角度,3、256字节的片内数据存储器地址空间。访问片内RAM指令用MOV。,上述三个存储空间地址是重叠的,89C51的指令系统采用不同的数据传送指令符号。,返回,9/29/2024,63,2.3.2 程序存储器地址空间,一、用途:,二、编址:,三、寻址方式:,返回,9/29/2024,64,一、用途:,用于存放编好的程序和表格常数。,返回,9/29/2024,65,二、编址:,容量为4KB。地址为0000H,0FFFH。,片外最多可扩至64KB ROM/EPROM,地址为1000H,FFFFH。,片内外统一编址。,返回,9/29/2024,66,三、寻址方式:,1、当 EA=“1”时:,在0000,0FFFH范围内执行片内ROM中的程序,当指令地址超过0FFFH 后就自动转向片外ROM中取指令。,9/29/2024,67,三、寻址方式:,2、当 EA=”0”时:,片内,ROM,不起作用,,CPU,只能从片,ROM/EPROM,中取指令。可以从,0000H,开始寻址。,9/29/2024,68,三、寻址方式:,3、片内ROM和片外ROM取指的速度相同。,9/29/2024,69,三、寻址方式:,4、程序存储器的保留存储单元。,如表2-2所示。,9/29/2024,70,三、寻址方式:,(1)0000H,0002H三个单元:,用作上电复位后引导程序的存放单元。因为复位后PC的内容为0000H,CPU总是从0000H开始执行程序。将转移指令存放到这三个单元,程序就被引导到指定的程序存储器空间去执行。,9/29/2024,71,三、寻址方式:,(2)0003H,002AH单元:,均分为五段,用作五个中断服务程序的入口。中断矢量地址表如表2-3所示。,返回,9/29/2024,72,2.3.3 数据存储器地址空间,一、用途:,二、片外RAM:,三、片内RAM:,返回,9/29/2024,73,一、用途:,用于存放运算的中间结果、数据暂存和缓冲、标志位等。,9/29/2024,74,二、片外RAM:,地址:0000HFFFFH,寻址:用MOVX指令,9/29/2024,75,三、片内RAM:,片内数据存储器最大可寻址256个单元,它们又分为两部分: 低128字节(00H7FH)是真正的RAM区;高128字节(80HFFH)为特殊功能寄存器(SFR)区。如图27所示。,高128字节和低128字节RAM中的配置及含义如图28和图29所示。,9/29/2024,76,图28 低128字节RAM区,图29 高128字节RAM区(SFR区,特殊功能寄存器区),9/29/2024,77,1) 低128字节RAM,9C51的32个工作寄存器与RAM安排在同一个队列空间里,统一编址并使用同样的寻址方式(直接寻址和间接寻址)。,00H1FH地址安排为4组工作寄存器区,每组有8个工作寄存器(R0R7),共占32个单元,见表2-4。通过对程序状态字PSW中RS1、RS0的设置,每组寄存器均可选作CPU的当前工作寄存器组。若程序中并不需要4组,那么其余可用作一般RAM单元。CPU复位后,选中第0组寄存器为当前的工作寄存器。,工作寄存器区后的16字节单元(20H2FH),可用位寻址方式访问其各位。在89系列单片机的指令系统中,还包括许多位操作指令,这些位操作指令可直接对这128位寻址。这128位的位地址为00H7FH,其位地址分布见图28。,9/29/2024,78,2) 高128字节RAM特殊功能寄存器(SFR),89C51片内高128字节RAM中,有21个特殊功能寄存器(SFR),它们离散地分布在80HFFH的RAM空间中。访问特殊功能寄存器只允许使用直接寻址方式。,这些特殊功能寄存器见图29。各SFR的名称及含义如表25所列。,9/29/2024,79,(1) 累加器ACC(E0H),累加器ACC是89C51最常用、最忙碌的8位特殊功能寄存器,许多指令的操作数取自于ACC,许多运算中间结果也存放于ACC。在指令系统中用A作为累加器ACC的助记符。,9/29/2024,80,(2) 寄存器B(F0H),在乘、除指令中,用到了8位寄存器B。乘法指令的两个操作数分别取自A和B,乘积存于B和A两个8位寄存器中。除法指令中,A中存放被除数,B中放除数,商存放于A,B中存放余数。,在其他指令中,B可作为一般通用寄存器或一个RAM单元使用。,9/29/2024,81,(3) 程序状态寄存器PSW(D0H),PSW是一个8位特殊功能寄存器,它的各位包含了程序执行后的状态信息,供程序查询或判别之用。各位的含义及其格式如表26所列。,PSW除有确定的字节地址(D0H)外,每一位均有位地址,见表26。,9/29/2024,82,(4) 栈指针SP(81H),堆栈指针SP为8位特殊功能寄存器,SP的内容可指向89C51片内00H7FH RAM的任何单元。系统复位后,SP初始化为07H,即指向07H的RAM单元。,9/29/2024,83,在图210中,假若有8个RAM单元,每个单元都在其右面编有地址,栈顶由堆栈指针SP自动管理。每次进行压入或弹出操作以后,堆栈指针便自动调整以保持指示堆栈顶部的位置。这些操作可用图210说明。,图210 堆栈的压入与弹出,9/29/2024,84,(5) 数据指针DPTR(83H,82H),DPTR是一个16位的特殊功能寄存器,其高位字节寄存器用DPH表示(地址83H),低位字节寄存器用DPL表示(地址82H)。DPTR既可以作为一个16位寄存器来处理,也可以作为两个独立的8位寄存器DPH和DPL使用。,DPTR主要用于存放16位地址,以便对64 KB片外RAM作间接寻址。,9/29/2024,85,(6) /端口P0P3(80H,90H,A0H,B0H),P0P3为4个8位特殊功能寄存器,分别是4个并行/端口的锁存器。它们都有字节地址,每一个口锁存器还有位地址,每一条/线均可独立用作输入或输出。,用作输出时,可以锁存数据;用作输入时,数据可以缓冲。,图2-11所示为各个SFR所在的字节地址位置。空格部分为未来设计新型芯片可定义的SFR位置。,9/29/2024,86,图2-11 特殊功能寄存器SFR的位置,9/29/2024,87,2.4CPU时序,2.4.1片内振荡器及时钟信号的产生,返回,2.4.2机器周期和指令周期,2.4.3CPU取指、执行周期时序,9/29/2024,88,2.4.1片内时钟信号的产生,89C51芯片内部有一个高增益反相放大器,用于构成振荡器。反相放大器的输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。电容器和通常取30 pF左右,可稳定频率并对振荡频率有微调作用。振荡脉冲频率范围为fOSC=024 MHz。,晶体振荡器的频率为fOSC,振荡信号从XTAL2端输入到片内的时钟发生器上,,如图2-12,所示。,返回,9/29/2024,89,图2-12 89C51的片内振荡器及时钟发生器,9/29/2024,90,1. 节拍与状态周期,时钟发生器是一个2分频的触发器电路,它将振荡器的信号频率fOSC除以2,向CPU提供两相时钟信号P1和P2。时钟信号的周期称为机器状态周期S(STATE),是振荡周期的2倍。在每个时钟周期(即机器状态周期S)的前半周期,相位1(P1)信号有效,在每个时钟周期的后半周期,相位2(P2,节拍2)信号有效。,每个时钟周期(以后常称状态S)有两个节拍(相)P1和P2,CPU就以两相时钟P1和P2为基本节拍指挥89C51单片机各个部件协调地工作。,9/29/2024,91,一个机器周期是指,CPU,访问存储器一次所需的时间。,例如,取指令、读存储器、写存储器等等。,一个机器周期包括,12,个振荡周期,分为,6,个,S,状态:,S1S6,。,每个状态又分为两拍,称为,P1,和,P2,。,因此,一个机器周期中的,12,个振荡周期表示为,S1P1,,,S1P2,,,S2P1,,,,,S6P1,,,S6P2,。,若采用,6MHz,晶体振荡器,则每个机器周期为2,s,(,微秒),机器周期,如图所示,返回,2. 机器周期和指令周期,9/29/2024,92,指令周期:执行一条指令所需的时间。,每条指令由一个或若干个字节组成。,有单字节指令,双字节指令,,多字节指令等。字节数少则占存储器空间少,。,每条指令的指令周期都由一个或几个,机器周期,组成。,有单周期指令、双周期指令、和四周期指令。机器周期数少则执行速度快。,指令周期,如图所示,返回,2. 机器周期和指令周期,9/29/2024,93,3. 基本时序定时单位,综上所述,89C51或其他80C51单片机的基本时序定时单位有如下4个。,振荡周期:,晶振的振荡周期,为最小的时序单位。,状态周期:,振荡频率经单片机内的二分频器分频后提供给片内CPU的时钟周期。因此,一个状态周期包含2个振荡周期。,机器周期(MC):,1个机器周期由6个状态周期即12个振荡周期组成,是计算机执行一种基本操作的时间单位。,指令周期:,执行一条指令所需的时间。一个指令周期由14个机器周期组成,依据指令不同而不同,见附录A。,9/29/2024,94,2.4.2CPU取指、执行周期时序,每条指令的执行都可以包括取指和执指两个阶段。,在取指阶段,CPU从内部或外部ROM中取出指令操作码及操作数,然后再执行这条指令。,单字节和双字节的指令都可能是单机器周期或双周期,而三字节指令都是双周期的,只有乘、除指令占四周期。因此,执行一条指令的时间(指令周期)分别是2s,4s和8s。,如,图2-14,所示,返回,9/29/2024,95,图214 89C51单片机的取指/执行时序,9/29/2024,96,2.5复位操作,返回,2.5.1 复位操作的主要功能,主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。,复位操作还对其他一些寄存器有影响,它们的复位状态如表28所列。,表28中的符号意义如下:,9/29/2024,97,表28 各特殊功能寄存器的复位值,返回,9/29/2024,98,2.5.2复位信号及其产生,一、复位信号:,RST引脚为复位信号输入端。,当RST引脚为高电平,且有效时间持续24个振荡周期以上,才能复位。,二、产生复位信号的电路逻辑图:,如,图2-15,所示。,返回,9/29/2024,99,返回,复位电路,施密特触发器,片内RAM,RST/V,PD,V,CC,V,SS,D,1,D,2,图215 复位电路逻辑图,9/29/2024,100,2.5.3复位电路,一、上电自动复位:,是通过外部复位电路的电容充电实现。,如,图2-16(a),所示。,二、按键手动复位:,按键电平复位方式:,如,图2-16(b),所示。,返回,9/29/2024,101,2.6 89C51单片机的低功耗工作方式,89C51提供两种节电工作方式,即空闲(等待、待机)方式和掉电(停机)工作方式,图217所示为实现这两种方式的内部电路。,由图217可见,若IDL=0,则89C51将进入空闲运作方式。在这种方式下,振荡器仍继续运行,但IDL封锁了去CPU的“与”门,故CPU此时得不到时钟信号。而中断、串行口和定时器等环节却仍在时钟控制下正常运行。掉电方式下(PD=0),振荡器冻结。,图217中,PD和IDL均为PCON中PD和IDL触发器的输出端。,9/29/2024,102,图217 空闲和掉电方式控制电路,9/29/2024,103,2.6.1 方式的设定,空闲方式和掉电方式是通过对SFR中的PCON(地址87H)相应位置1而启动的。,图218所示为89C51电源控制寄存器PCON各位的分布情况。HMOS器件的PCON只包括一个SMOD位,其他4位是CHMOS器件独有的。3个保留位用户不得使用。,图218 电源控制寄存器PCON,9/29/2024,104,图218中各符号的名称和功能如下:,SMOD: 波特率倍频位。若此位为1,则串行口方式1、方式2和方式3的波特率加倍。,GF1和GF0: 通用标志位。,PD: 掉电方式位。此位写1即启动掉电方式。由图217可见,此时时钟冻结。,IDL: 空闲方式位。此位写1即启动空闲方式。这时CPU因无时钟控制而停止运作。如果同时向PD和IDL两位写1,则PD优先。,89C51中PCON的复位值为00000B。,9/29/2024,105,2.6.2 空闲(等待、待机)工作方式,CPU执行完置)的指令后,系统进入空闲工作方式。,进入空闲方式后,有两种方法可以使系统退出空闲方式:,一是任何的中断请求被响应都可以由硬件将(IDL)清0而中止空闲工作方式。,另一种退出空闲方式的方法是硬件复位,,9/29/2024,106,2.6.3 掉电(停机)工作方式,当CPU执行一条置位(PD)为1的指令后,系统进入掉电工作方式。,退出掉电方式的唯一方法是由硬件复位,复位后将所有特殊功能寄存器的内容初始化,但不改变片内RAM区的数据。,在掉电工作方式下,VCC可以降到2 V,但在进入掉电方式之前,VCC不能降低。而在准备退出掉电方式之前,VCC必须恢复正常的工作电压值,并维持一段时间(约10 ms),使振荡器重新启动并稳定后方可退出掉电方式。,9/29/2024,107,2.7输出/输入端口,2.7.1 I/O端口概述,2.7.2 P0口,2.7.3 P1口,2.7.4 P2口,2.7.5 P3口,2.7.6 端口的负载能力和接口要求,返回,9/29/2024,108,2.7.2 P0口,一、结构,二、P0口作为一般I/O口使用,三、P0口作为地址/数据总线使用,返回,9/29/2024,109,一、结构,P0口某位的结构由一个输出锁存器、二个三态输入缓冲器和输出驱动电路及控制电路组成。如,图2-2,1所示。,当C=0时,开关MUX被控为如图示位置,P0口为通用I/O口;,当C=1时,开关拨向反相器3的输出端,P0口分时作为地址/数据总线使用。,返回,9/29/2024,110,图2-21,P0口某位的结构图,当C=0时,开关MUX被控为如图示位置,P0口为通用I/O口;,当C=1时,开关拨向反相器3的输出端,P0口分时作为地址/数据总线使用。,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,地址/数据,控制C,MUX,VCC,T1,T2,P0.X,4,3,1,2,锁存器,9/29/2024,111,二、P0口作为一般I/O口使用,1、P0口用作输出口,2、P0口作输入口,返回,9/29/2024,112,三、P0口作为地址/数据总线使用,1P0口用作输出地址/数据总线,以P0口引脚输出低8位地址或数据信息,MUX开关把CPU内部地址/数据线经反向器3与驱动场效应管FET(T2)栅极接通。上下两个FET处于反相,构成推拉式的输出电路(T1导通时上拉,T2导通时下拉),提高了负载能力。,当P0口被地址/数据总线占用时,就无法再作I/O口使用了。,返回,9/29/2024,113,2由P0口输入数据:,在“读引脚”信号有效时,打开输入缓冲器2,使数据进入内部总线。,三、P0口作为地址/数据总线使用,返回,9/29/2024,114,2.7.3 P1口,一、P1口结构,二、P1口用作通用I/O,返回,9/29/2024,115,2.7.3P1口,一、P1口结构:,其电路结构见,图2-19,,输出驱动部分与P0口不同,内部有上拉负载电阻与电源相连。实质上,电阻是两个场效应管FET并在一起:一个FET为负载管,其电阻固定。另一个FET可工作在导通或截止两种状态,使其总电阻值变化近似为0或阻值很大两种情况。当阻值近似为0时,可将引脚快速上拉至高电平;当阻值很大时,P1口为高阻输入状态。,返回,9/29/2024,116,图2-19,P1口某位的结构图,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,VCC,P1.X,1,2,锁存器,9/29/2024,117,2.7.3P1口,二、P1口用作通用I/O,P1口也是一个准双向口。,在端口用作输入时,也必须先向对应的锁存器写入1,使FET截止。,当P1口输出高电平时,能向外提供拉电流负载,所以不必再接上拉电阻。,返回,9/29/2024,118,2.7.4 P2口,一、P2口结构,二、P2口用作一般I/O口,三、P2口用作高8位地址总线,返回,9/29/2024,119,一、P2口结构,如,图2-20,所示,P2口某位的结构与P0口类似,有MUX开关。驱动部分与P1口类似,但比P1口多了一个转换控制部分。,返回,9/29/2024,120,图2-20,P2口某位的结构图,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,地址/数据,控制C,MUX,VCC,P2.X,锁存器,9/29/2024,121,二、P2口用作一般I/O口,1、当CPU对片内存储器和I/O口进行读/写(执行MOV 指令或EA=1时,执行MOVC指令)时,由内部硬件自动使开关MUX倒向锁存器的Q端,这时,P2口为一般I/O口。,返回,9/29/2024,122,二、P2口用作一般I/O口,2、在只需扩展256B片外RAM的系统中,使用“MOVX A,R,i,”类指令访问片外RAM时,寻址范围是256B,只需低8位地址线就可以实现。P2口不受该指令影响,仍可作通用I/O口。,返回,9/29/2024,123,二、P2口用作一般I/O口,3、若扩展的RAM容量超过256B,使用“MOVX,A,DPTR”类指令的寻址范围是64KB,此时,高8位地址总线用P2口输出。在片外RAM读/写周期内,P2口锁存器仍保持原来端口的数据;在访问片外RAM周期结束后,多路开关MUX自动切换倒锁存器Q端。由于CPU对RAM的访问不是经常的,在这种情况下,P2口在一定的限度内仍可用作通用I/O口。,返回,9/29/2024,124,三、P2口用作高8位地址总线,当CPU对片外存储器或I/O口进行读/写(执行MOVX指令或EA=0时执行MOVC指令)时,开关倒向地址线(右)端,这时,P2口只输出高8位地址。因为访问片外EPROM和RAM的操作往往接连不断,所以,P2口要不断送出高8位地址,此时P2口无法再用作通用I/O口。,返回,9/29/2024,125,2.7.5 P3口,一、结构,二,、P3口作为通用I/O口使用,三、P3口用作第二功能使用,返回,9/29/2024,126,图2-22,P3口某位的结构图,读引脚,读锁存器,内部总线,写入,D,CP,Q,第二输出功能,VCC,P3.X,3,1,2,锁存器,4,第二输入功能,W,返回,9/29/2024,127,1、当把P3口作为通用I/O口进行SFR寻址时“第二输出功能端”W保持高电平,打开“与非”门3,D锁存器输出端Q的状态可通过“与非”门3送至FET场效应管输出。,2、当P3口作为输入使用(即CPU读引脚状态)时,同P0P2口一样应由软件向口锁存器写1。,二,、P3口作为通用I/O口使用,返回,9/29/2024,128,三、P3口用作第二功能使用,当端口用于第二功能时,8个引脚可按位独立定义。,见表2-10,返回,9/29/2024,129,表2-10 P3口线与第二功能表,返回,9/29/2024,130,2.8 思考题与习题,1. 89C51单片机片内包含哪些主要逻辑功能部件?,2. 89C51的端有何用途?,3. 89C51的存储器分哪几个空间?如何区别不同空间的寻址?,4. 简述89C51片内RAM的空间分配。,5. 简述布尔处理存储器的空间分配,片内RAM中包含哪些可位寻址单元。,9/29/2024,131,2.8 思考题与习题,6. 如何简捷地判断89C51正在工作?,7. 89C51如何确定和改变当前工作寄存器组?,8. 89C51 P0口用作通用/口输入时,若通过TTL“OC”门输入数据,应注意什么?为什么?,9. 读端口锁存器和“读引脚”有何不同?各使用哪种指令?,10. 89C51 P0P3口结构有何不同?用作通用/口输入数据时,应注意什么?,11. 89C51单片机的信号有何功能?在使用8031时,信号引脚应如何处理?,9/29/2024,132,2.8 思考题与习题,12. 89C51单片机有哪些信号需要芯片引脚以第2功能的方式提供?,13. 内部RAM低128字节单元划分为哪3个主要部分?各部分主要功能是什么?,14. 使单片机复位有几种方法?复位后机器的初始状态如何?,15. 开机复位后,CPU使用的是哪组工作寄存器?它们的地址是什么?CPU如何确定和改变当前工作寄存器组?,16. 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?,17. 位地址7CH与字节地址7CH如何区别?位地址7CH具体在片内RAM中的什么位置?,9/29/2024,133,2.8 思考题与习题,18. 89C51单片机的时钟周期与振荡周期之间有什么关系?什么叫机器周期和指令周期?,19. 一个机器周期的时序如何划分?,20. 什么叫堆栈?堆栈指针SP的作用是什么?89C51单片机堆栈的容量不能超过多少字节?,21. 89C51有几种低功耗方式?如何实现?,22. PC与DPTR各有哪些特点?有何异同?,23. 89C51端口锁存器的“读修改写”操作与“读引脚”操作有何区别?,返回,9/29/2024,134,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!