您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 第二章 单片微型计算机原理及结构
第二章MCS_51单片机的结构原理本章主要介绍MCS_51系列的8051的基本结构、工作原理、存储器结构、P0、P1、P2、P3四个I/O口的基本工作原理和操作特点。单片机的各种工作方式、单片机的时序等。2.1概述MCS_51系列单片机是Intel公司于是1980年推出的高档8位机。由于其优秀的性能价格获得了广泛的应用,也成为我国单片机市场的主流产品。目前广泛使用的MCS-51系列单片机有三个版本:8031、8051、8751。8051:8位CPU、128BRAM、4KBROM、23个特殊功能寄存器、4个8位并行口、1个全双工串行口、2个别16位定时/计数器。8751:仅改进来8051的掩模式的4KBROM为4KB的EPROM。8031:较8051不包含ROM。严格说来,8031不是完全的单片机。单片机的发展非常迅速,世界上一些著名的器件公司如Motorola公司、Zilog公司等也竞相推也新产品。1983年,Intel公司又推出了高性能的16位MCS-96系列单片机。INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。以后我们将用89C51来完成一系列的实验。表2.1MCS-51系列型号型号制造技术片内程序存储器片内数据存储器8051AHHMOSROM(4k)128字节8031AHAHMOS无128字节8751HHMOSEPROM(4K)128字节80C51CHMOSROM(4K)128字节80C31CHMOS无128字节8052HMOSROM(8K)256字节8032HMOS无256字节2.2MCS_51单片机内部结构及引脚内部总线时钟电路CPUINT0T1T0并行接口串行接口P0P1P2P3TXDRXD中断系统ROMRAM定时/计数器INT1图2-1MCS-51单片机的基本结构图2-28051的内部结构框图通道0驱动器通道2驱动器RAM地址锁存器RAM通道0锁存器通道2锁存器ROM/EPROMB寄存器程序地址寄存器缓冲器PC递增器程序计数器PC0驱动器DPTR指针VCCGNDP1.0~P1.7堆栈指针SPACCTMP2PSW通道3锁存器通道1锁存器通道1驱动器通道3驱动器TMP1SCONTMODPCONTCONTL0TH1TH0TL1IESBUF(TX/RX)IP中断、串行口和定时器逻辑振荡器P3.0~P3.7RSTEAALEPSENXTAL2XTAL1ALU(+5V)指令寄存器定时和控制逻辑指令译码器2.2.18051单片机的结构1.中央处理单元(8位CPU)2.只读存储器(4KROM)3.随机存取存储器(128B/256BRAM)4.并行输入/输出口(32条):P0口、P1口、P2口、P3口5.串行输入/输出口(2条):TXDRXD6.定时/计数器:T0T17.时钟电路为内部振荡器与外接晶振电路。8.中断系统有5个中断:INT0INT1TF0TF1TI/RI2.2.2MCS_51单片机外部引脚掩模MOS制造工艺的MCS_51单片机都采用40脚双列直插式封装(DIP)方式。下面分别叙述这40条引脚的功能。主电源引脚.VSS(20脚):接地;.VCC(40脚):接+5V电源。外接晶振引脚.XTAL1(19脚):接外部晶振的一个脚。.XTAL2(18脚):接外部晶振的一个引脚。控制或复位引脚.RST/VPD(9脚).ALE/PROG(30脚)·PSEN(29脚)·EA/VPP(31脚)输入/输出引脚P0—P3共4个输入/输出口,32个引脚,每个口为8根I/O线,它们的功能与使用将在本章程2.5节中详细介绍。图2.3MCS51引脚图12345678910111213141516171819204039383736353433323130292827262524232221P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1VSSVCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPSENP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A88031805187512.3MCS_51单片机存储器配置FFFFH1000H外部ROM0FFFH0000H内部ROMEA=1外部ROMEA=0工作寄存器0~3组位寻址区RAMSFR00H20H30H80HFFH外部RAM0000HFFFFH图2.48051存储器组织结构图2.3.1MCS_51的存储器结构1.物理上,分为4个存储空间:片内ROM、片外ROM、片外RAM(8031无片内ROM)。2.逻辑上,分为3个空间:片内、片外同一程序存储器,片内随机存储器,片外随机存储器。它们的编址方式太及可用于其上的指令如下。程序存储器(片内、片外)统一编址,使用MOVC指令;数据存储器(片内)统一编址,使用MOV指令;数据存储器(片外)统一编址,使用MOVX指令。3.功能上,把存储器分为5种类型:程序存储器,使用MOVC指令;内部数据存储器,使用MOV指令;外部数据存储器,使用MOVX指令;特殊功能寄存器,使用MOV指令;位地址空间,使用MOV、SETB、CLR等指令。2.3.2程序存储器容量:可扩展到64KB。寻址范围:0000H~FFFFH,共64KB。EA=1,寻址内部ROM;EA=0,寻址外部ROM。地址码长度:16位。寻址方式:基址+变址寻址,如:MOVCA,@A+DPTRMOVCA,@A+PC作用:存放程序及程序运行时所需的常数。特征:(1)若无片内ROM(8031),64KB全部由外部ROM承担,主要存放处理程序及所需的常数。(2)有7个单元具有特殊含义,它们是:①0000H:系统复位后,PC=0000H,由0000H单元存放一条绝对跳转指令,用户设计的程序由跳转后的地址存放;②0003H:外部中断0的入口直址;③000BH:定时器1的溢出中断入口地址;④0013H:外部中断的入口地址;⑤001BH:定时器1的溢出中断入口地址;⑥0023H:串行口中断入口地址;⑦002BH:定时器2溢出中断入口地址(8032、8052有)。(3)访问外部程序存储器的信息传送通路:地址码由P0、P2口传送,控制信号由PSEN(读选通)接EPROM的OE,数据信息由P0接收。2.3.3内部数据存储器51系列单片机的内部数据存储器在物理上分为两个区:00H~7FH单元组成的低落128字节的RAM块和字节的SFR块。寻址范围:00H~7FH。作用:作数据缓冲用。特征:(1)00H~1FH共32个单元作工作寄存器用,分为4个区,每个区8个单元,由PSW中的RS1、RS0确定当前工作区;(2)20H~2FH为位寻址区,作为布尔处理机存储空间的一部分;(3)可在内部数据存储器中开辟一个堆栈区,堆栈深度小于128字节。数据缓冲区堆栈区工作单元位地址:00H~7FH3区2区1区0区只能字节寻址可位寻址,也可字节寻址4组工作寄存器R0~R7可以字节地址寻址00H1FH20~2FH30H7FH图2.5RAM空间分配示意图RS1RS0寄存器区R0~R7所占单元的地址000110110组1组2组3组00H~07H08H~0FH10H~17H18H~1FH表2.3PSW3、PSW4的含义2.3.4特殊功能寄存器SFR寻址空间:80H~FFH。注意:在MCS-51中,只有22个专用寄存器,其中6个是双字节寄存器。PC为程序计数器,在物理上独立,用于安放下一条将要执行的指令的地址(程序存储器地址),是一个16位专用寄存器,寻址范围为0~64KB,不属于内部数据RAM的SFR块,共占用了26个字节。其中,SBUF有两个寄存器。所有特殊功能寄存器的地址分配和位地址分别如表2.4、表2.5所示。符号名称位地址字节地址符号名称位地址字节地址*ACC累加器E0~E7H0E0H+*T2CO定时/计数器2控制C8~CFH0C8H*B乘法寄存器F0~F7H0F0HTH0定时器0高8位8CH*PSW程序状态字D0~D7H0D0HTH1定时器1高8位8DHSP堆栈指针81HTL0定时器0低8位8AHDPTR数据存储器指针83H82HTL1定时器1低8位8BH*P0通道080~87H80H+TH2定时器2高8位0CDH*P1通道190~97H90H+TL2定时器2低8位0CCH*P2通道2A0~A7H0A0H+RLDH定时/计数器2自动装载(高)0CBH*P3通道3B0~B7H0B0H+PLDL定时/计数器2自动装载(高)0CAH*IP中断优先控制寄存器B8~BFH0B8H*SCON串行口控制98~9FH98H*IE中断允许控制寄存器A8~AF0A8HSBUF串行数据缓冲器99HTMOD定时/计数器方式选择89HPCON电源控制及波特率选择87H*TCON定时/计数器控制88~8FH88H注:*可按字节和位寻址;+仅在8032/8052芯片中存在表2.4特殊功能寄存器SFR一缆表1.算术运算寄存器(1)累加器A(Accumulator)(2)B寄存器(3)程序状态字PSW(ProgramStatusWord)寄存器.CY(PSW.7)(Carry0:进位/借位标志。.AC(PSW.6)(AuxiliaryCarry)辅助进位/借位标志。.F0(PSW.5)(Flag0):标志0。.RS1、RS0(PSW.4、PSW.3)(RegisterBankSelect):寄存器区选择控制位。.OV(PSW.2)(Overflow):溢出标志。.P(PSW.0)奇偶标志。CYACF0RS1RS0OV-P2.指针寄存器程序计数器PC:指明即将执行的下一条指令的地址,为16位寄存器。系统初始化时,PC=0000H,可寻址范围64KB。堆栈指针SP:指明栈顶元素的地址,8位。可由软件设置初始值,系统复位时设置为07H。堆栈:堆栈是一个区域,主要用来保护断点和保护现场,这个区域本身没有任何特殊之处,就是内部RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的‘先进后出,后进先出’,并且堆栈有特殊的数据传输指令,即‘PUSH’和‘POP’,有一个特殊的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减1。由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP的值,就可以把堆栈设置在规定的内存单元中。数据指针DPTR:指明访问的数据存储器的单元地址,16位,可寻址范围64KB,由DPH,DPL组成。DPH,DPL也可单独作为8位寄存器使用。3.并行输入/输出端口专用寄存器P0、P1、P2、P3分别是P0~P3的锁存器4.串行输入/输出端口串行数据缓冲器SBUF用于存放发送或已接收的数据。串行控制/状态寄存器SCON控制监视串行口的工作状态。电源控制寄存器PCON用于控制单片机的低功耗工作方式及波特率的选择。5.中断系统中断优先级寄存器IP(InterruptPriority):MCS_51的中断分为2个优先级,由IP设定各个中断源的优先级。中断允许寄存器IE(InterruptEnable):用于各个中断源的允许和屏蔽设置。6.定时/计数器定时器方式寄存器TMOD:用于设定定时器的工作方式。定时器控制寄存器TCON:其各位用于对定时器和外部中断进行控制。计数寄存器TH0、TH1、TL0、TL1:用于设定定时/计数器的初值。TH0、TL0为一组,TH1、TL1为一组2
本文标题:第二章 单片微型计算机原理及结构
链接地址:https://www.777doc.com/doc-4028682 .html