您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 89C51单片机的结构和原理
第2章89C51单片机的结构和原理第二章89C51单片机的结构和原理返回主目录2.189C51系列单片机的结构2.289C51单片机引脚及其功能2.389C51存储器配置2.4CPU时序2.5复位及复位电路2.6输入/输出端口结构第2章89C51单片机的结构和原理2.1MCS51系列单片机的结构89C51是Intel公司生产的一个单片机系列的名称。该公司继1976推出MCS-48系列8位单片机后,又于1980年推出了89C51系列高档8位单片机。属于这一系列的单片机芯片有很多种,如8051,8031,8751,80C51BH等等,它们的基本组成、基本性能和指令系统都是相同的。为了叙述方便,今后如不作说明,则常用89C51代表MCS51系列单片机。其它常用系列89Cxxpic单片机原理凌阳16位单片机avr单片机第2章89C51单片机的结构和原理2.1.189C51单片机的基本组成单片机结构框图频率基准源计数器内部总线中断中断控制并行I/O口串行输入/输出89C51振荡器及定时电路4K/8K字节程序存储器ROM128/256字节数据存储器RAM2个16位定时器/计数器8051CPU64K字节总线扩展控制可编程I/O口4×8位可编程串行口图2-1所示为89C51系列单片机的基本结构框图。第2章89C51单片机的结构和原理在一小块芯片上,集成了一个微型计算机的各个组成部分。每一个单片机包括:(1)一个8位的微处理器(CPU)。(2)片内数据存储器RAM(128B/256B)。存放可以读/写的数据---运算的中间结果、最终结果、欲显示的数据等。(3)片内程序存储器ROM/EPROM(4KB/8KB)。存放程序,一些原始数据和表格。但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31等。(4)四个8位并行I/O接口P0-P3。每个口既可以用作输入,也可以用作输出。第2章89C51单片机的结构和原理(5)两个定时器/计数器。每个定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。(6)五个中断源的中断控制系统。(7)一个全双工UART(通用异步接收发送器)的串行I/O口。用于实现单片机之间或单片机与微机之间的串行通信。(8)片内振荡器和时钟产生电路。但石英晶体和微调电容需要外接。最高允许振荡频率24MHZ。以上各个部分通过内部数据总线相连接。第2章89C51单片机的结构和原理2.1.289C51单片机内部结构89C51单片机内部结构如图2-2所示。第2章89C51单片机的结构和原理8051/8751/8031芯片的外部引脚和指令系统完全兼容,其内部结构除ROM/EPROM不同外,其余完全相同。一个完整的计算机应该由运算器,控制器,存储器(ROM及RAM)和I/O接口组成。一般微处理器(如Z80)只包括运算器和控制器两部分。和一般微处理器相比,89C51增加了四个8位I/O口,一个串行口,4KBROM,128BRAM,很多工作寄存器及特殊功能寄存器(SFR)。各部分的功能简述如下.第2章89C51单片机的结构和原理一、中央处理单元(CPU)CPU是单片机的核心,是计算机的控制和指挥中心,有运算器和控制器等部件组成。1.运算器运算器包括一个可进行8位算术运算和逻辑运算的单元ALU,8位的暂存器1,暂存器2,8位的累加器ACC,寄存器B和程序状态寄存器PSW等。ALU:可对4位(半字节),8位(一字节)和16位(双字节)数据进行操作。能作加、减、乘、除、加1、减1、BCD数十进制调整及比较等算术运算和与、或、异或、求补及循环移位等逻辑操作。第2章89C51单片机的结构和原理ACC:累加器ACC,8位,一个运算数经暂存器2进入ALU的输入端,与另一个来自暂存器1的运算数进行运算,运算结果又送回ACC。在指令中用助记符A来表示。PSW:程序状态寄存器,用于指示指令执行后的状态信息,相当于一般微处理器的标志寄存器。PSW中各位状态供程序查询和判别用。B:8位寄存器,在乘、除运算时,B寄存器用来存放一个操作数,也用来存放运算后的一部分结果;若不做乘、除运算时,则可作为通用寄存器使用。第2章89C51单片机的结构和原理2.控制器控制器包括程序计数器PC、指令寄存器IR、指令译码器ID、振荡器及定时电路等。程序计数器PC:由两个8位的计数器PCH及PCL组成,共16位。PC实际上是程序的字节地址计数器,PC中的内容是将要执行的下一条指令的地址。指令寄存器IR及指令译码器ID:由PC中的内容指定ROM地址,取出来的指令经指令寄存器IR送至指令译码器ID,由ID对指令译码并送PLA产生一定序列的控制信号,以执行指令所规定的操作。振荡器及定时电路:89C51单片机片内有振荡电路,只需外接石英晶体和频率微调电容(2个30pF左右),其频率范围为1.2MHz-12MHz。第2章89C51单片机的结构和原理二、存储器89C51片内有ROM(程序存储器,只能读)和RAM(数据存储器,可读可写)两类,他们有各自独立的存储地址空间,与一般微机的存储器配置方式很不相同。1.程序存储器(ROM)89C51及8751的片内程序存储器容量为4KB,地址从0000H开始,用于存放程序和表格常数。2.数据存储器(RAM)89C51/8751/8031片内数据存储器均为128B,地址为00H-7FH,用于存放运算的中间结果、数据暂存以及数据缓冲等。第2章89C51单片机的结构和原理在这128B的RAM中,有32个字节单元可指定为工作寄存器,这同一般微处理器不同。89C51的片内RAM和工作寄存器排在一个队列里统一编址。由图2-2可见,89C51单片机内部还有SP,DPTR,PCON,…,IE,IP等特殊功能寄存器,它们也同128字节RAM在一个队列编址,地址为80H~FFH。在这128字节RAM单元中有21个特殊功能寄存器(SFR),在这些特殊功能寄存器中还包括P0~P3口锁存器。第2章89C51单片机的结构和原理(3)I/O接口89C51有四个8位并行接口,即P0-P3。它们都是双向端口,每个端口有8条I/O线,均可输入/输出。P0-P3口四个锁存器同RAM统一编址,可以把I/O口当作一般特殊功能寄存器来寻址。第2章89C51单片机的结构和原理2-289C51单片机引脚及其功能89C51系列中各种芯片的引脚是互相兼容的,如89C51,8751和8031均采用40脚双列直插封装(DIP)方式。当然,不同芯片之间引脚功能也略有差异。89C51单片机是高性能单片机,因为受到引脚数目的限制,所以有不少引脚具有第二功能,如图2-3所示。第2章89C51单片机的结构和原理Vcc(+)P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.089C5112345678910111213141516171819204039383736353433323130292827262524232221P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1Vss第2章89C51单片机的结构和原理RD803089C518751端口0端口1端口2RST/VPDVssVccEA/VppPSENALE/PROG端口3XTAL1XTAL2TXDRXDINT0INT1T0T1WR第2章89C51单片机的结构和原理各引脚功能简要说明如下:1.电源引脚Vcc和VssVcc(40脚):电源端,为+5V。Vss(20脚):接地端。2.时钟电路引脚XTAL1和XTAL2XTAL1(19):接外部晶体和微调电容的一端;在采用外部时钟时,该引脚必须接地。XTAL2(18):接外部晶体和微调电容的另一端;若采用外部时钟电路时,该引脚输入外部时钟脉冲。注意:要检查89C51/8031的振荡电路是否正常工作,可用示波器查看XTAL2端是否有脉冲信号输出。第2章89C51单片机的结构和原理3.控制信号引脚RST,ALM,/PSEN和/EARST/VPD(9脚):复位信号与备用电源的输入端。RST是复位信号输入端,高电平有效。保持两个机器周期的高电平时,就可以完成复位操作。RST引脚的第二功能是VPD,即备用电源的输入端。ALE/PROG(30脚):地址锁存允许信号端。当89C51上电正常工作后,ALE引脚不断向外输出正脉冲信号,此频率为振荡器频率fosc的1/6。CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。第2章89C51单片机的结构和原理不访问片外存储器时,ALE端也以振荡频率的1/6固定输出正脉冲,因而ALE信号可以用作对外输出时钟或定时信号。注意:如果想确定89C51/8031芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出,如有脉冲信号输出,则89C51/8031基本上是好的。ALE负载驱动能力-----8个LS型TTL(低功耗甚高速TTL)负载。第二功能PROG在对片内带有4KBEPROM的8751编程写入(固化程序)时,作为编程脉冲输入端。第2章89C51单片机的结构和原理PSEN(29脚):程序存储允许输出信号端。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引脚接EPROM的OE端。PSEN端有效,即允许读出EPROM/ROM中的指令码。PSEN负载-----8个LS型TTL负载。注意:要检查一个89C51/8031小系统上电后CPU能否正常到EPROM/ROM中读取指令码,也可用示波器看PSEN端有无脉冲输出。如有则说明基本上工作正常。第2章89C51单片机的结构和原理EA/Vpp(31脚):外部程序存储器地址允许输入端/固化编程电压输入端。当EA引脚接高电平时,CPU只访问片内EPROM/ROM并执行内部程序存储器中的指令,但当PC(程序计数器)的值超过0FFFH(对8751/89C51为4KB)时,将自动转去执行片外程序存储器的程序。当输入信号EA引脚接低电平(接地)时,CPU只访问外部EPROM/ROM并执行外部程序存储器中的指令,而不管是否有片内程序存储器。对于无片内ROM的8031或8032,需外扩EPROM,此时必须将EA引脚接地。如是拥有片内ROM的89C51,外扩EPROM也是可以的,但也要将EA接地。第二功能Vpp是对8751片内EPROM固化编程时,作为施加较高编程电压(一般12V-21V)的输入端。第2章89C51单片机的结构和原理4.输入/输出端口P0,P1,P2和P3P0口(P0.0-P0.7,39-32脚):P0口是一个漏极开路的8位准双向I/O端口。作为漏极开路的输出端口,每个能驱动8个LS型TTL负载。当P0口作为输入口使用时,应先向口锁存器(地址80H)写入全1,此时P0口的全部引脚浮空,可作为高阻抗输入。作输入口使用时要先写1,这就是准双向的含义。在CPU访问片外存储器(8031片外EPROM或RAM)时,P0口是分时提供低8位地址和8位数据的复用总线。在此期间,P0口内部上拉电阻有效。第2章89C51单片机的结构和原理P1口(P1.0-P1.7,1-8脚):P1口是一个带内部上拉电阻的8位准双向I/O端口。P1口的每一位能驱动(灌入或输出电流)4个LS型TTL负载。在P1口作为输入口使用时,应先向P1口锁存器(地址90H)写入全1,此时P1口引脚有内部上拉电阻拉成高电平。P2口(P2.0-P2.7,21-28脚):P2口是一个带内部上拉电阻的8位准双向I/O端口。P2口的每一位能驱动(灌入或输出电流)4个LS型TTL负载。在访问片外EPROM/ROM时,它输出高8位地址。第2章89C51单片机的结构和原理P3口(P3.0-P3.7,10-17脚):P3口是
本文标题:89C51单片机的结构和原理
链接地址:https://www.777doc.com/doc-4224355 .html