chapt2-单片机结构与时序.ppt_第1页
chapt2-单片机结构与时序.ppt_第2页
chapt2-单片机结构与时序.ppt_第3页
chapt2-单片机结构与时序.ppt_第4页
chapt2-单片机结构与时序.ppt_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章 MCS-51系列单片 机的结构和原理 2.0 概 述 2.1 MCS-51单片机内部结构 2.2 MCS-51单片机引脚功能 2.3 MCS-51单片机工作方式 2.4 MCS-51单片机时序 1 1 MCS-51系列单片机是把构成计算机的CPU、存 储器、I/O端口制作在一块集成电路芯片中。另外,还 集成有定时器/计数器和中断系统等部件,因此可方便 地用于定时控制和远程数据传送。 MCS-51的典型产品是8051、80C51、8052。MCS- 51系列里,所以产品都是以8051为核心电路发展起来 的,它们都具有8051的基本结构和软件特征。 8051是ROM型单片机,内部有4KROM;8031无 片内ROM,8052片内有8KROM。 2.0 2.0 概概 述述 2 2 从制造工艺看,MCS-51系列中的器件基本分为 HMOS和CMOS两类。CMOS的特点是电流小且功耗 低,但对电平要求高(高电平大于4.5V,低电平小于 0.45V),HMOS对电平要求低(高电平大于2.0V,低 电平小于0.8V),但功耗大。 8051采用HMOS工艺制造, 80C51BH系列采用 CHMOS工艺制成,功耗低,其中87C51具有两级存储 器保密系统,可防止非法拷贝 。 本章将以MCS-51系列的8051为典型例子,详细介 绍MCS-51单片机的结构、性能、存储器结构及工作原 理等内容。 3 3 2.1 MCS-512.1 MCS-51单片机内部结构单片机内部结构 以8051为例 由图可见,在这一块芯片上,集成了一台微型计 算机的各个部分。其功能部件主要有CPU、存储器、 可编程I/O端口、定时/计数器、串行口和中断系统等。 各部分通过内部总线相连。具体包含1个8位中央处处理 器CPU、4KB程序存储储器EPROM、128B随机存取存储储器 RAM、4个8位并行I/O接口、1个全双工串行通信接口、 2个16位定时时器/计计数器及21个特殊功能寄存器。外部 具有64KB程序存储储器寻寻址能力和64KB数据存储储器寻寻址 能力。 4 4 时钟OSC CPU 各种I/O定时器/计数 器 程序存储器 ROM 数据存储器 RAM 中断 MCS-51单片机组成框图 5 5 8051单片机内部结构框图 P1 P1口锁存器 P1口驱动器 8 PCON SCON TMOD TCON SBUF(TX) SBUF(RX) IE IP TH0 TL0 TH1 TL1 中断、串行口和定时器部件 P3 P3口锁存器 P3口驱动器 8 PSEN EA RST ALE指令 寄存 器IR 定时 控制 逻辑 寄存器B SP RAM 1288 +5V VCC 地 址 寄 存 器 RAM P0口锁存器 P0 P0口驱动器 8 ROM 4K8 P2口锁存器 P2 P2口驱动器 8 PSW 暂存寄存器1暂存寄存器2 累加器A 算术逻辑部件 ALU 程序地址寄存器 缓冲寄存器 PC增量 PC DPTR 图3.1(2) XTAL1 XTAL2 6 6 2.1.1 CPU结构 运算器 C P U 算术/逻辑部件ALU(Arithmetic Logic Unit) 累加器ACC (Accumulator) 程序状态字寄存器PSW (Program Status Word) 暂存寄存器TMP1和TMP2 寄存器B 控制器 定时控制与条件转移逻辑电路 程序计数器PC 指令寄存器IR 指令译码器ID 7 7 1 1、运算器、运算器 运算器的功能主要是对对数据进进行加、减、乘、除等算术术 运算及“与”、“或”、“非”、“异或”等逻辑逻辑 运算,还还 具有数据传传送、移位、判断和程序转转移等功能。对对于位操作 数,可进进行置位、清零、求反、移位、条件判断及按位“与 ”、按位“或”等操作。 2 2、控制器、控制器 控制器电路包括程序计计数器PC、PC加1寄存器、指令 寄存器IR、指令译码译码 器、数据指针针DPTR、堆栈栈指针针SP、缓缓 冲器以及定时时与控制电电路、振荡荡器(OSC)等。指令寄存器用 于存放从程序存储储器取出的指令码码,定时时控制逻辑逻辑 用于对对指 令寄存器中的操作码进码进 行译码译码 ,并在OSC的配合下产产生执执行 该该指令的时时序脉冲,以完成相应应指令的执执行。 8 8 时钟电时钟电时钟电时钟电 路或者路或者OSCOSC电电电电路路 MCS51芯片内部有时钟电时钟电 路,但晶体振荡荡器和微调电调电 容必须须外接。时钟电时钟电 路为单为单 片机产产生时钟时钟 脉冲序列,振荡荡 器的频频率范围为围为 1.2MHz12MHz,典型取值为值为 6MHz。 外接晶振,产产生时钟时钟 信号,控制CPU的工作速度。 CPUCPU各个功能部件及其专用寄存器组介绍各个功能部件及其专用寄存器组介绍 9 9 算术逻辑术逻辑 运算部件主要用来完成数据的算术术和逻辑逻辑 运算 。ALU有2个输输入端和2个输输出端,其中一端接至累加器,接 收由累加器送来的一个操作数;另一端接收TMP中的第二个 操作数。参加运算的操作数在ALU中进进行规规定的操作运算, 运算结结束后,一方面将结结果送至累加器,同时时将操作结结果的 特征状态态送标标志寄存器。 算术逻辑运算部件算术逻辑运算部件ALUALU 用于存放从程序存储储器中取出的指令(即操作)码码。 用于存放从程序存储储器中取出的指令(即操作)码码。 指令寄存器指令寄存器IRIR 用于存放从程序存储储器中取出的指令(即操作)码码。 1010 累加器累加器A A或或ACCACC 二进进制8位寄存器,用来存放操作数或运算结结果。在 CPU执执行某种运算前,两个操作数中的一个通常应应放在 累加器A中,运算完成后累加器A便可得到运算结结果。累 加器是一个特殊的寄存器,由于所有运算的数据都要通过过 累加器,故累加器在微处处理器中占有很重要的位置。 通用寄存器通用寄存器B B 二进进制8位寄存器,专门为专门为 乘法和除法设设置的寄存器。 在进进行乘除法运算前,存放乘数或除数,在乘法或除法完成 后用于存放乘积积的高8位或除法的余数。除此之外,作为为一 般REG使用。 1111 PSW称为为程序状态态字寄存器,是一个8位标标志寄存器。用 来存放指令执执行后的有关状态态。各位状态态在指令执执行过过程自动动 形成,也可由用户户根据需要利用传传送指令加以改变变。 Cy(PSW.7)进位标志位。当加减运算时,累加器A产生进位或借位时, Cy =1;当运算结果没有产生进位和借位时, Cy =0。 AC(PSW.6)辅助进位(或称半进位)标志。 当加减运算结果的低四 位(A3)向高四位(A4)产生进位或借位时, AC =1;当运算结果的A3向A4没有 产生进位或借位时, AC =0。 OV(PSW.2)溢出标志位。 当运算结果产生溢出,则累加器A中运算结 果超出8位数可表示范围时, OV置1;否则 OV =0。根据OV状态可判断累加 器中运算结果是否正确。 程序状态字程序状态字PSWPSW PSW7 PSW6 PSW5 PSW4 PSW3 PSW2 PSW1 PSW0 Cy Ac F0 RS1 RS0 OV - P 1212 F0(PSW.7)用户标志位。该位状态由用户根据程序执行的需要通过传送 指令确定,而且一经设定,便由用户程序直接检测,以决定用户程序流向。 P(PSW.0)奇偶标志位。当A中1的个数为奇数时, P =1;当A中1的 个数为偶数时, P =0。 PSW.1为无定义位,用户可不使用。 RS1和RS0(PSW.3和PSW.4)寄存器选择位。8051共有8个8位工作寄 存器,分别命名为R0R7。但它在RAM中的实际物理地址是根据需要选定 的。用户通过改变RS1和RS0的状态可以决定R0R7的实际物理地址。 RS1RS0寄存器组组片内RAM地址通用寄存器名称 000组组00H07HR0R7 011组组08H0FHR0R7 102组组10H17HR0R7 013组组18H1FHR0R7 1313 二进进制16位的程序地址寄存器。用来存放下一条将要执执行 的指令地址。程序中的指令是按照顺顺序存放在存储储器中的某个 连续连续 区域。每条指令都有自己的地址,CPU执执行指令时时,先 根据PC中的指令地址从存储储器中取出当前需要执执行的指令并 把它送给给控制器,随后PC中地址码码自动动加1,以便为为CPU取出 下一条指令。 具有自动动加1功能,从而指向下一条将要执执行的指令地址 。PC的值值可以修改,一般程序是按顺顺序执执行指令的。若改变变 了PC的值值,则则程序将不再按顺顺序执执行。 程序计数器程序计数器PCPC 8位寄存器。 SP用来存放堆栈栈的栈顶栈顶 地址,能自动动加1或减1 。 堆栈指针堆栈指针SPSP 1414 堆栈栈是在片内RAM区专门专门 开辟出来的按照“先进进后出”或 “后进进先出”原则进则进 行数据存取的一块连续块连续 的存储储区域。称为为 堆栈栈区。 堆栈栈有栈顶栈顶 和栈栈底,栈栈底地址是固定不变变的,它决定了 堆栈栈在RAM中的物理位置;栈顶栈顶 地址始终终在SP中,是可以 改变变的,它决定堆栈栈中是否存放有数据。堆栈栈中为为空(没有数 据)时时,二者重叠,SP指向最下端(栈栈底),向堆栈栈推入数据 后,栈顶栈顶 向上生长长,SP也向上生长长。 堆栈栈顶栈栈顶 :最后推入堆栈栈的数据所在的存储单储单 元 在进进行操作之前, 先用指令给给SP赋值赋值 , 以规规定栈栈区在 RAM区的起始地址(栈栈底层层)。当数据推入栈栈区后, SP的值值 也自动动随之变变化。访问访问 堆栈栈区指令为为:PUSH和POP。 1515 一个 16 位的专专用寄存器, 其高8位字节节寄存器用DPH表 示,低8位字节节寄存器用DPL表示。DPTR既可作为为一个 16 位寄存器DPTR来处处理, 也可作为为两个独立的 8 位寄存器 DPH和DPL来处处理。 DPTR 主要用来存放 16位地址,包括存放片内ROM的 地址,以及片外RAM和片外ROM的地址。 数据指针数据指针DPTRDPTR 1616 2.1.2 存储器结构 MCS-51的存储储器有ROM和RAM之分,还还有片内和 片外之分。MCS-51的片内存储储器集成在芯片内部,是 MCS-51的一个组组成部分;片外存储储器是外接的专专用存储储 器芯片,MCS-51只提供地址和控制命令,需要通过过印刷 电电路板上三总线总线 才能联联机工作。 无论论是片内还还是片外,MCS-51对对某存储单储单 元的读读写 地址都是MCS-51提供的。 1717 ROM(片内和片外) 片内RAM 区 片外RAM区 MCS-51存储器地址分配 1818 一、程序存储器ROM及地址空间 ROM被称为为只读读存储储器。程序存储储器用于存放编编好的 程序、表格和常数。 8051片内有4K字节节的ROM存储单储单 元,地址为为0000H 0FFFH。8751有4K字节节的EPROM,而8052和8752则则有 8K字节节的片内存储储器。8031和8032无片内程序存储储器, 所以片内程序存储储器的有无是区分芯片的主要标标志。 片外用16位地址线线最多可扩扩展64K字节节ROM,两者是统统 一编编址的。 1919 0000H0FFFH0000H0FFFH的的4KB4KB地址区可以为片内和片外地址区可以为片内和片外 ROMROM公用,引脚公用,引脚EAEA用来指示这种占用:用来指示这种占用: 如果EA端接高电电平,8051执执行片内4KB ROM地址 (0000H0FFFH) 中的程序。当寻寻址范围围超过过4KB( 1000HFFFFH)时时,则则从片外存储储器取指令。 当EA端接低电电平时时,8051的所有取指令操作均在片外程 序存储储器中进进行,这时这时 片外存储储器可以从 0000H开始编编 址。 2020 在程序存储器中,有在程序存储器中,有6 6个单元具有特殊功能个单元具有特殊功能 0003H:外部中断0入口地址。 000BH:定时器0中断入口地址。 0013H:外部中断1入口地址。 001BH:定时器1中断入口地址。 0023H:串行口中断入口地址。 使用时,通常在这些入口地址处存放一条绝对跳转指 令,使程序响应中断后跳转到用户安排的中断程序起始地 址,或者从0000H起始地址跳转到用户设计的初始程序上。 0000H: 8051复位后,PC0000H,即程序从0000H开始执 行指令。 2121 二、数据存储器RAM及地址空间 数 据 存 储 器 片外RAM容量不超过过64KB,地址范围围0000H FFFFH 片内RAM128B(低128字节节),地址范围围 00H7FH 使用时只能用MOVX指令访问 使用MOV指令访问,可以进行堆栈操作 2222 片外数据存储储器和I/O口与片内数据存储储器空间间0000H FFFFH是重叠的。在8051单单片机中采用MOV和MOVX两种 指令来区分片内外RAM空间间。程序运行时时,片外数据存储储 器只能通过过地址寄存器DPTR和通用寄存器R0、R1间间接寻寻 址。 片外片外RAMRAM 用R0和R1只能访问低256个字节单元,用DPTR可访问64KB单元 。指令格式如下: MOVX A, R0 MOVX A, R1 MOVX A, DPTR MOVX R0, A MOVX R1, A MOVX DPTR, A 2323 内部 RAM共128个字节单节单 元,片内数据存储器空 间分布图如下: 通用RAM区 (80B) 位地址区 (16B) 寄存器区 4组(32B) 7FH 寄存器3组 寄存器2组 寄存器1组 寄存器0组 寄存器区 4组(32B) . . . . . 寄存器工作区的选择:由PSW中的3-4位 RS1、RS0来决定选哪一组为当前工作寄存器 : RS1、RS0=00 选0组(00H07H) RS1、RS0=01 选1组(08H0FH) RS1、RS0=10 选2组(10H17H) RS1、RS0=11 选3组(18H1FH) 工作寄存器区工作寄存器区 是指是指00H00H1FH1FH区区, , 共分共分4 4个组个组, , 每组每组 有有8 8个单元个单元, , 共共3232个内部个内部RAMRAM单元。每次只能有单元。每次只能有1 1组组 作为工作寄存器使用作为工作寄存器使用, CPU, CPU通过软件修改通过软件修改PSWPSW中中 RS0RS0和和RS1RS1两位的状态两位的状态, , 就可任选一个工作寄存器工就可任选一个工作寄存器工 作,其它各组可以作为一般的数据缓冲区使用。作,其它各组可以作为一般的数据缓冲区使用。 00H 30H 2FH 20H 1FH . . . 片内片内RAMRAM(低(低128128字节)字节) 2424 位地址区20H 21H 22H 23H 24H 25H 26H 27H 28H 29H 2AH 2BH 2CH 2DH 2EH 2FH 00H01H02H03H04H05H06H07H 08H0FH 10H 7FH78H 70H 68H 60H 58H 50H 48H 40H 38H 30H 28H 20H 77H 6FH 67H 18H 5FH 57H 4FH 47H 3FH 37H 2FH 27H 1FH 17H D7 D6 D5 D4 D3 D2 D1 D0 在工作寄存器后的16个数 据单单元(20H2FH), 它们们既可以作为为一般的数 据单单元使用,按字节寻节寻 址 ,又可以按位对对每个单单元 进进行操作,即位处处理,因 此这这16个数据单单元又称作 位寻寻址区。位寻寻址区共计计 128位,其位地址为为00H 7FH。 2525 通用RAM区 (80B) 位地址区 (16B) 00H 30H 2FH 20H 1FH 7FH 寄存器3组 寄存器2组 寄存器1组 寄存器0组 通用RAM区 . . . . . . 剩余的80个数据单单元即30H7FH为为真正的用户户RAM区 ,用于存放用户户数据或用作堆栈栈区使用,MCS-51对这对这 个 区中的每个RAM单单元只能按字节节存取。 2626 特殊功能寄存器特殊功能寄存器SFRSFR(高(高128128字节)字节) 8051或8031的特殊功能寄存器有21个,除了已经经介绍绍的 专专用寄存器外,还还有与指针针相关的(2个):SP和DPTR;与 端口相关的(7个):P0,P1,P2,P3,SCON,SBUF, PCON;与定时时/计计数器相关的(6个):TMOD,TCON, TH0,TL0,TH1,TL1;与中断有关的2个:IP,IE。 每个SFR占有一个RAM单单元,离散地分布在80HFFH 地址区域中,其名称、地址分配和复位后的初始状态态如表所 示,不为为SFR占用的RAM单单元实际实际 上不存在,访问访问 它们们也 没有意义义。 用户户可以通过过直接寻寻址指令对对它们们按字节节存取,有些也 可以按位对对每一位进进行位寻寻址。 2727 特殊功能寄存器名称、特殊功能寄存器名称、 标识符、标识符、 地址表地址表 2828 2929 2.1.3 I/O端口 I/O端口是MCS-51单片机对外部实现控制和信息交 换的必经之路,有串行和并行之分,串行I/O端口一次只 能传送1位二进制信息,并行I/O端口一次可以传送一组( 8位)二进制信息。 一、并行I/O接口 8051有4个并行I/O端口,分别命名为P0、P1、P2 、P3,这4个并行I/O端口中,每个端口都有双向I/O功 能。每个端口内部都有一个8位数据输出锁存器和一个8位 数据输入缓存器。 3030 P0P0口与口与P2P2口口 P0口是一个8位双向三态输入输出接口,P2口是一个准双 向输入输出接口,而且每一位都有自已的位地址。中央处理 器可按字节进行数据传送,也可按位进行位操作。 P0口和P2口内部均有一个受控制器控制的二选一选择电 路,故它们除了可以用作通用I/O口使用,还具有特殊功能。 在没有外接存储器时,P0口和P2口作为一般的I/O口,直 接与外设通信;在联接外部存储器时,P0口作为8位数据输入 输出口和外部存储器低8位地址口,地址/数据分时传送。P2 口输出外部存储器的高8位地址,其连接如图所示。 3131 数据总线(D7D0) 地址锁存器 ROM 程序存储器 64K OE RAM 或I/O口 64K WR RD P2口 8051 ALE EA P0口 WR PSEN RD 地址总线(A15A0) 外部存储器连接 8031对对片外ROM的读读操作指令 MOVC A,A+DPTR 8031对对片外RAM的写操作指令 MOVX DPTR,A 3232 P1P1口与口与P3P3口口 P1口与P3口是8位准双向输入输出接口,每一位也有自己的 位地址。中央处理器可按字节进行数据传送,也可按位进行位 操作。P1口常作为通用I/O口使用,为CUP传送数据;P3口除了 可以作为通用I/O口外,P3口具有第二功能,如表所示。 P3口各位第二功能 引 脚第二功能功 能 P3.0RXD串行口输入 P3.1TXD串行口输出 P3.2外部中断0输入 P3.3外部中断1输入 P3.4T0定时器0计数输入 P3.5T1定时器1计数输入 P3.6外部数据存储器写选通信号 P3.7外部数据存储器读选通信号 3333 1、4个并行I/O口中,只有P0口具有真正的双 向I/O口,其余3个I/O口是准双向I/O口。 2、4个并行I/O口作为为通用I/O口使用时时,共有 写端口、读读端口和读读引脚三种操作方式。 说明: 3434 二、串行I/O接口 8051的串行I/O接口是一个全双工的可编程串行通信接 口,有一个数据接收缓种器和一个数据发送缓冲器,两个缓冲 器共用一个地址99H,表示为SBUF。中央处理器对接收缓冲器 只能读出不能写入,对发送缓冲器只能写入不能读出。系统中 有两个特殊功能寄存器SCON和PCON,控制串行通信工作方式。 8051的这个串行I/O端口既可以在程序控制下把CPU的8 位并行数据变成串行数据逐位从发送数据线TXD发送出去,也 可以把RXD线上串行接收到的数据变成8位并行数据送给CPU, 而且这种串行发送和串行接收可以单独进行,也可以同时进行 。 3535 8051串行发送和串行接收利用了P3口的第二功能,即 它利用了P3.1引脚作为串行数据的发送线TXD和P3.0引脚作 为串行数据的接收线RXD。串行I/O口的电路结构还包括串行 口控制寄存器SCON、电源及波特率选择寄存器PCON和串行数 据缓存器SBUF等,它们都属于特殊功能寄存器。其中PCON和 SCON 用于设置串行口工作方式和确定数据的发送和接收波 特率,SBUF实际上由两个8位寄存器组成,一个用于存放要 发送的数据,另一个用于存放接收到的数据, 起着数据的 缓存作用。 3636 2.1.4 定时器/计数器 8051内部有2个16位的可编程定时器/计数器,即T0和T1 ,具有4种工作方式。定时器/计数器T0由计数器TH0和TL0 组成,定时器/计数器T1由计数器TH1和TL1组成。TH、TL 分别为两个8位(高8位和低8位)寄存器,连接起来可组成 16位计数器。所以,T0和T1的最大计数模值为216-1,即需 要65535个脉冲才能把它们从全“0”变为全“1”。 TH0、TL0、TH1、TL1均为SFR中的一个,用户可以 通过指令对它们存取数据。 3737 对定时器/计数器的控制由两个特殊功能寄存器完成: 一个为定时器方式选择寄存器TMOD,用于确定定时器还 是计数器工作模式;另一个为定时器控制寄存器TCON, 用于决定定时器或者计数器的启动、停止以及进行中断控 制。这两个寄存器均属SFR,用户可以通过指令确定它们 的状态。 因此,T0和T1有定时器和计数器两种工作模式,在每 种工作模式下又分为若干工作方式。 3838 2.1.5 中断系统 MCS-51单片机有5个中断源。8051的5个中断源有内部 和外部之分,包括2个外部中断INT0、INT1,2个内部定时器/ 计数器溢出中断TF0、TF1和1个内部串行口中断源。外部中 断源产生的中断请求信号可从P3.2和P3.3引脚上输入,有电 平或边沿两种引起中断的触发方式。内部中断源T0和T1的两 个中断是在它们从全1变为全0溢出时自动向中断系统提出请 求。内部串行口中断源的中断请求是在串行口每发送完一个 8位二进制数据或接收到一组输入数据(8位)后自动向系统 提出。 3939 8051的中断系统主要由两个中断控制寄存器电路 实现,一个是IE,中断允许寄存器,用于控制5个中断 源中哪些中断请求被允许向CPU提出,哪些中断源的中 断请求被禁止;另一个是IP,中断优先级寄存器,用于 控制5个中断源的中断请求的优先权最高,可以被CPU 最先处理。 IE和IP也属于SFR,其状态可以由用于通过指令设 定。 4040 2.2 2.2 MCS-51MCS-51单片机引脚功能单片机引脚功能 在MCS-51系列单片机中,各类型号单片机的引脚是 相互兼容的.在器件的封装形式上,MCS51系列单片机有 二种:双列直插式(常为HMOS型器件所用)和方形封 装(大多数在CHMOS型器件中使用),均为40脚。 MCS - 51单片机引脚及总线结构图如下,它们为标 准的40脚DIP封装。 4141 MCS51系列单片机双列直插式封装引脚图及逻辑符号 4242 8051有40条引脚,可分为端口线、电源线和控制线三类。 . 端口线:8051共有4个并行I/O口P0、P1、P2和P3 ,每个端 口都有8条端口线,共有48=32条引脚,用于传送数据/地址。 每个端口的结构各不相同,功能和用途差别很大。 P0P0口(口(P0.0P0.0P0.7 P0.7):为8位地址线和8位数据线的复用端 口。 没有外扩芯片时,作为一般的I/O线 ,直接与外设通信; 有外扩存储器 ,先送出外部存储器的地址码的低八位,然后传送 数据信息。 P1P1口(口(P1.0P1.0P1.7 P1.7):作为一般的I/O线 ,与外设通信。也 可以接外设。 4343 P2P2口(口(P2.0P2.0P2.7 P2.7):为一个8位准双向I/O口,在访问外 部程序存储器时,它作存储器的高8位地址线。没有外扩芯片 时,作为一般的I/O线 ,直接与外设通信;有外扩存储器时 ,送 出外部存储器的地址码的高八位。 P3P3口(口(P3.0P3.0P3.7 P3.7):P3口同样是8位准双向I/O口,P3口 除了作为一般的I/O口使用之外,还具有第二功能。 . 电源线: 2 2条电源引脚条电源引脚 Vcc和Vss Vcc:电源线,接5V。 Vss:接地线。 4444 . 控制线:6条 ALE / PROG ALE / PROG 地址锁存允许地址锁存允许/ /编程线编程线 当8051由P0口送出低8位地址码的同时,8051CPU还在 ALE/PROG送出一高电平信号,其下降沿作为外部锁存器的触 发信号,用于把这个片外存储器低8位地址锁存到外部专用地 址锁存器。当8051 送出低8位地址的时候,锁存器应该处于送数 状态;在低8位地址消失之前,锁存器应该处于锁存状态。 当片外存储器存取数据时,ALE/PROG为低8位地址输出锁 存信号;当不访问片外存储器时,ALE/PROG输出固定频率的 脉冲信号,频率为1/6的fosc,该脉冲序列可用作外部时钟源或 作为定时脉冲源使用。 4545 EA /VPP EA /VPP 访问外访问外ROMROM控制信号控制信号/ /编程电源线编程电源线 可以控制8051使用片内ROM还是使用片外ROM。 当EA为高电平时,加电后8051从片内ROM的0000H单元开 始取指令,即从片内ROM的0000H开始执行程序;若EA为的低 电平,则加电后8051从片外ROM的0000H单元开始取指令,故 此时片外ROM的编制应该从0000H开始;对于8031来说,由于 其内部无ROM,程序必须放在片外ROM中,所以EA应接地。 PSEN PSEN 片外存储器选通线片外存储器选通线 在执行片外ROM中读取指令MOVC时,8051自动在PSEN线 上产生片外ROM的读信号(负脉冲),用于片外ROM芯片的选 通。一般接到外ROM的读控制端。其他情况下,PSEN线均为 高电平封锁状态。 4646 RST/VPD RST/VPD 复位复位/ /备用电源线备用电源线 可以使8051处于复位(初始化)状态,高电平有效。该 引脚得到高电平,并维持一段时间后(其有效时间应持续24 个振荡周期以上才能完成复位操作,若使用6MHz晶振,则 需持续4S以上才能完成复位操作) 8051复位,进入复位状 态(初始化状态)。8051的复位操作有上电自动复位、人工按 钮复位两种方式。此外,它的第二功能是备用电源输入端。 4747 XTAL1XTAL1和和XTAL2 XTAL2 时钟电路引脚,即片内振荡电路输入端时钟电路引脚,即片内振荡电路输入端 XTAL1:接外部晶振和微调电容的一端,在片内它是振荡器 倒相放大器的输入;若使用外部时钟时,该引脚必须接地。 XTAL2:接外部晶振和微调电容的另一端,在片内它是振荡 器倒相放大器的输出;若使用外部时钟时,该引脚为外部时钟的 输入端。 内部方式时钟电路 外接时钟电路 4848 内部时钟电路 XTAL1和XTAL2这两个端子用来外接石英晶体和微调电容 ,并用来连接8051片内OSC的定时反馈回路。 石英晶体起振后,能在XTAL2线上输出一个3V左右的正弦 波,以便使MCS-51片内的OSC电路按石英晶振相同的频率自激 振荡。通常,OSC的输出时钟频率fosc为0.516MHz,典型值为 12MHz或11.0592MHz。电容C1和C2可以帮助起振,典型值为 30pF,调节它们可以达到微调fosc的目的。 外部时钟电路 MCS-51所需的时钟由外部振荡器提供。外部时钟源应是方波 发生器,频率根据具体机型确定。 4949 2.3 MCS-512.3 MCS-51单片机工作方式单片机工作方式 MCS-51单片机的工作方式包括:复位方式、 程序运行方式、节电方式以及EPROM的编程和校 验方式四种。 其中最后一种所指的编程是指利用特殊手段 对单片机片内EPROM进行写操作的过程,校验则 是对刚刚写入的程序代码进行读出验证的过程。 单片机的编程和校验方式只有EPROM型器件才有 ,如8751H这样的器件。 5050 单片机在开机时,以及当程序运行出错或操作错误使系统 处于死锁状态时,都需要复位,即按复位键以重新启动,或通 过监视定时器来强迫复位。复位后中央处理器CPU以及其他功 能部件都处于一个确定的初始状态,并从这个状态开始工作。 MCS-51的RST引脚是复位信号的输入端,高电平有效。 MCS51单片机复位后, 程序计数器PC和特殊功能寄存器 为初始值,处于复位状态。寄存器的复位状态如下表所示。 复位状态下,各寄存器取值如下: PC=0000H,PSW=00H,SP=07H P0=FFH,P1=FFH,P2=FFH,P3=FFH,其余都为0 2.3.1 复位方式 5151 复位不影响片内RAM存放的内容。 寄存器的复位状态 5252 2.3.2 程序执行方式 MCS51单片机在时钟电路工作以后, RST/VPD端持续给 出2个机器周期的高电平进入复位工作方式, 并一直维持复位 方式,直到RST脚收到低电平, MCS51单片机才脱离复位 状态,进入程序运行状态。 在程序运行状态下,CPU不断从ROM中取出指令并执行 之。 程序执行方式是单片微机的基本工作方式,通常可以分为 单步执行和连续执行两种工作方式。 5353 1、 单步执行方式 单步执行方式是指单片机在控制面板上的某个按钮(即单 步执行键)控制下逐条执行用户程序中指令的方式,即按一次 单步执行键就执行一条用户指令的方式。单步执行方式常常用 于用户程序的调试。 单步执行方式是利用单片机外部中断功能实现的。单步执 行键相当于外部中断的中断源,当它按下时相应电路就产生一 个负脉冲(即中断请求信号)送到单片机的INT0(或INT1)引 脚。MCS-51单片机在此负脉冲的作用下,自动执行预先安排在 中断服务程序中的如下两条指令: 5454 . . . LOOP1: JNB P3.2, LOOP1 ; 若INT0=0,则不往下执行 LOOP2: JB P3.2, LOOP2 ;若INT0=1,则不往下执行 RET1 并返回用户程序中执行一条用户指令,这条用户指令执行完后 ,单片机又自动回到上述中断服务程序执行,并等待用户再次 按下单步执行键。 5555 连续执行方式是所有单片机都需要的一种工作方式,被 执行程序可以放在片内或片外ROM中, 由于复位后PC0000H,因此,复位后程序执行总是从 0000H开始的。一般在0000H开始的单元中存放一条无条件转 移指令,以便跳转到实际主程序的入口去执行。 比如: ORG 0000H SJMP MAIN ;转主程序 2、 连续执行方式 5656 节电方式是一种能减少单片机功耗的工作方式,只有 CHMOS型器件才有这种工作方式。 CHMOS型单片机是一种低功耗器件,正常工作时消耗 1120mA电流,空闲状态时为1.75mA电流,掉电方式为 550A。 80C51有两种低功耗方式,即待机方式和掉电保护方式 。 2.3.3 节电工作方式 5757 其中: SMOD:串行口波特率倍率控制位,在串行通讯时使用 。 GF1、GF0:通用标志位1、0,其状态可由用户通过指 令改变。 PD:掉电控制位,PD1,则进入掉电方式。 IDL:空闲控制位,IDL1,则进入待机方式。 若PD和IDL同时为1,则先激活掉电方式。待机方式和掉电保 护方式的片内控制电路如图所示。 SMOD GF1 GF0 PD IDL 待机方式和掉电保护方式都是由电源控制寄存器(PCON) 来控制的。电源控制寄存器PCON各位定义如下: 5858 80C51单片微机低功耗方式的内部结构 M1 M2 PD 5959 待机方式 执行指令:MOV PCON,#01H ;IDL1 使PCON寄存器IDL位置1,IDL端变为低电平,与门 M2无输出。则80C51进入待机方式 由上图中可看出这时振 荡器仍然运行,并向中断逻辑、串行口和定时器/计数器电 路提供时钟,中断功能继续存在 。 向CPU提供时钟的电路被阻断,因此CPU停止工作, CPU现场(如SP、PC、PSW、ACC)以及RAM和SFR中 其他寄存器内容均维持不变,ALE和PSEN变为高电平。 6060 CHMOS型器件可以采用两种方式退出空闲状态 中断方式:在待机方式下,若产生一个外部中断请求信号, 在单片机响应中断的同时,片内硬件电路自动使PCON.0位 (IDL位)清0, 与门M2重新打开,于是单片机退出待机 方式而进入正常工作方式。 在中断服务程序中安排一条RETI指令,就可以使单片微 机恢复正常工作,CPU从激活空闲状态方式指令的下一条指 令开始继续执行程序。 硬件复位:在80C31的RST引脚上送一个脉宽大于24个时钟 周期的脉冲,PCON中的IDL被硬件自动清零,与门M2重新 打开,CPU便可继续执行进入空闲方式前的用户程序。 6161 掉电保护方式 PCON寄存器的PD位控制单片微机进入掉电保护方式。即 80C31执行指令:MOV PCON, #02H ;PD1 便进入掉电方式。 当80C51检测到电源故障时,除进行信息保护外,执行上 述指令把PCON.1位置1,使之进入掉电保护方式。此时PD端 变为低电平,与门M1关闭,时钟发生器停振,片内所有部件 停止工作,但只有片内RAM单元和特殊功能寄存器中的内容 被保护,ALE和PSEN输出逻辑低电平。 在掉电期间,VCC电源可以降为2V(可由干电池供电) ,但必须等待VCC恢复+5V电压并经过一段时间后,才能允许 80C31退出掉电方式。 6262 只能依靠复位退出掉电保护方式,就是给RST引脚上外 加一个足够宽的复位正脉冲。 80C51备用电源由VCC端引入。当VCC恢复正常后, 只要硬件复位信号维持10ms,就能使单片机退出掉电保护方 式,单片机先恢复SFR在掉电前的状态,CPU则从进入待机 方式的下一条指令开始重新执行程序。 下面作为空闲方式的应用,介绍一个备用电源输入电路,在 电源故障时,依靠备用电源处于空闲方式。 6363 图所示仅是其中一种备用电源输入电 路。电源故障时,可通过 向CPU 发中断请求。CPU中断响应后,执行 中断服务程序,将有关数据送入内部 RAM保存,然后由P1.0输出0信号( 低电平),触发单稳电路555。若单 稳电路定时输出后,VCC仍然存在, 则是假报警,复位后重新工作。若 VCC已掉电,则由单稳电路接通备用 电源,直到VCC恢复正常。也可由 CPU输出控制信号,启动系统备用电 源。 掉电保护 备用电源 P1.0 RST/VPD 1 2 3 4 555 ! 这里只有硬件支持电路,这里只有硬件支持电路, 完成这个过程还由主程序和完成这个过程还由主程序和 T0T0中断服务程序组成。中断服务程序组成。 6464 2.3.4 编程和校验方式 编程就是指利用特殊手段对单片机片内EPROM进行写 操作的过程,校验则是对刚刚写入的程序代码进行读出验证 的过程。单片机的编程和校验方式只有EPROM型器件才有 ,如8751H片内的4KB程序存储器是EPROM型的。对于片内 具有闪速存储器的89C51 (89C52) 、78E51 (78E52) 等单片机 也可以通过编程来修改程序存储器中的程序。 8751H片内EPROM有编程、校验和保密编程三种工作方 式。 6565 1、 EPROM编程方式 EPROM编程时一般采用46MHz的振荡频率, CPU处于工作状态。8751H片内EPROM编程是在另一台 微型计算机控制下进行的。 EPROM单元地址由P0口和P2 口的P2.0P2.3输入 ,写入数据由P0口输入,P2.4P2.6和 接低电平, P2.7接高电平,RST接2.5V高电平, /VPP端平时为 TTL高电平,EPROM编程时加+21V电压,ALE/ 加50ms的负脉冲。芯片连接与时序如下图所示。 PRO G 6666 地址 0000H 0FFFH A7A0 A11A8 TTL高电平 46MHz +5V 编程数据 ALE/PROG EA/VPP V1H1(+2.5V) P1口 P23P2.0 P2.4 P2.5 P2.6 P2.7 XTAL2 XTAL1 VSS P0口 VCC ALE EA RST PSEN 8751 编程时的电路连接 6767 2、 EPROM校验方式 8751H各引脚按右图连接。 EPROM校验也是在另一台计算机 控制下进行的。在校验时,微型计 算机把12位地址送入被校验 8751H的P2口和P1口,选中相应 EPROM单元中的内容,经P0口送 给计算机,微型计算机把读出的代 码和编程时写入的编程代码进行比 较:若两者结果相同,则该单元编 程正确;若结果不同,则应查明原 因重新进行编程,直至正确为止。 0 P2.4 P2.5 P2.6 P2.7 +5V +5V 校验时的引脚连接 6868 8751H的EPROM编程和校验波形 21V0.5V A11A0 6969 3、 EPROM保密编程 8751H的EPROM保密编程的过程和EPROM编程 过程类同。8751H一旦完成保密编程后,用户就可以 让它自由执行EPROM中的程序,但不能以任何形式 读出和对它进一步编程。 不论编程还是保密编程,8751H EPROM中的程 序代码均可在专用的EPROM擦除器中擦除。 7070 EPROM擦除 8751单片机内部E2PROM的擦除和其它E2PROM芯片的 擦除方法一样,通过紫外线照射来擦除。擦除后,可以重新 写入。 一般日光灯和太阳光中都包含有紫外线。如果8751芯片 上的窗口长期暴露在日光灯或太阳光下,其中的数据就会丢 失。因此,8751单片机在写入后,其上方的窗口须用黑纸或 金属膜覆盖。 7171 2.4 MCS-512.4 MCS-51单片机时序单片机时序 单片机时序就是CPU在执行指令过程中,由CPU控制器 发出的一系列控制信号的时间顺序。CPU实质上就是一个复 杂的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论