单片机课件-第五章.ppt
《单片机课件-第五章.ppt》由会员分享,可在线阅读,更多相关《单片机课件-第五章.ppt(157页珍藏版)》请在三一文库上搜索。
1、单片机原理及应用,第五章MCS-51单片机的硬件资源 5.1 MCS-51的并行接口及其应用 5.2 MCS-51的中断系统 5.3 MCS-51的定时器/计数器 5.4 MCS-51的串行接口及串行通信,输入/输出接口是CPU外设间信息的桥梁,它可以制成一块单独的大规模集成电路,也可以和CPU集成在同一块芯片上,单片机中就是后一种结构。I/O接口有并行接口和串行接口两种。,5.1.1 MCS51内部并行I/O端口,8031有四个并行端口,分别命名为P0、P1 、P2 和P3 。这四个并行I/O端口的内部位结构如图51所示,每个端口皆有八位。由图51可见,每个位结构都有一个输出锁存器和一个输入
2、缓冲器。输出锁存器,用于存放需要输出的数据。,5.1 MCS-51的并行接口及其应用,第五章MCS-51单片机的硬件资源,每个端口的八位输出锁存器构成一个特殊功能寄存器,且冠名与端口相同。输入缓冲器用于对端口引脚上输入数据进行缓冲,因此各引脚上输入的数据必须一直保持到CPU把它读走为止。P0、P1 、P2 和P3端口的电路形式不同,其功能也不同。下面结合电路结构就其功能加以说明。,一、P0口,第五章 MCS-51单片机的硬件资源,在访问外部存储器时,P0口是一个真正的双向数据口,并分时送出地址的8位和送出(接收)相应存储单元的数据。,第五章MCS-51单片机的硬件资源,图51(a)是P0口的位
3、结构图,它包括一个输出锁存器,两个三态缓冲器,一个输出驱动电路和一个输出控制电路。,第五章MCS-51单片机的硬件资源,当从P0口输出地址或数据时,控制信号应为高电平1,模拟转换开关(MUX)把地址/数据信息经反相器和下拉场效应管接通,同时与门打开。输出的地址或数据既通过与门去驱动上拉场效应管,又通过反相器去驱动下拉场效应管。,例如,若地址/数据信息为“0”,该“0”信号一方面通过与门使上拉场效应管截止,另一方面经反相器使下拉场效应管导通,从而使引脚上输出相应的“0”信号,反之,若地址/数据信息为“1”,将会使上拉场效应管导通而下拉场效应管截止,引脚上将出现相应的“1”信号。,第五章MCS-5
4、1单片机的硬件资源,若P0口作为一般I/O口使用,在CPU向端口输出数据时,对应的输出控制信号应为0,模拟转换开关将把输出级与锁存器Q端接通。同时,因与门输出为0,使上拉场效应管处于截止状态,因此输出级是漏极开路电路。这样,当写脉冲加在触发器时针端CP上时,则与内部总线相连的D端数据取反后就出现在Q端,再经场效应管反相,在P0引脚上出现的数据正好是内部总线的数据。,不难看出,P0口在输出地址/数据信息和作为一般I/O口输出数据时,其输出驱动电路的工作状态是有差别的。,第五章MCS-51单片机的硬件资源,一般P0口的输出级能驱动8个LS TTL 输入,但对NMOS输入而言,P0口做地址/数据总线
5、口使用时,不必外加提升电阻。而作一般I/O口使用时,由于输出驱动电路工作于开漏状态,故需外接上拉电阻。,当P0口引脚上输入数据,此时上拉FET应一直处于截止状态。引脚上的外部信号即加在下面一个三态缓冲器的输入端,又加在下拉FET的漏极,假定在此之前曾输出锁存过数据0 ,则FET是导通的,这样引脚上的电位就始终被钳位在0 电平,使输入高电平无法读入。因此作为一般I/O口使用时,P0口是一个准双向口,即输入数据时,应先向口写“1”,使两个FET均截止,然后方可作高阻抗输入。,第五章 MCS-51单片机的硬件资源,但在P0口连接外部存储器时,由于访问外部存储器期间,CPU会自动向口0的锁存器写入0F
6、FH,所以,对用户而言,P0口用作地址/数据总线时,则是一个真正的双向口。,上面所述为数据由引脚输入的情况,称为“读引脚”操作。但在有些情况下 ,例如用一根口线去驱动一个晶体管的基极,则向此口线写“1”时,晶体管导通,并把引脚上的电平拉低,这时若从引脚上读取数据,会把此数据错读为0。为了避免错读引脚上电平的可能性,单片机中还提供了另一类所谓“读锁存器”操作。,第五章MCS-51单片机的硬件资源,这类操作的特点是:先读口,随之可对读入的数据进行修改,然后再写到端口上。例如执行指令ORL P0,A时,则先把P0上的内容读入CPU,然后与A累加器内容按位进行逻辑“或”操作,最后把“或”的结果送回P0
7、口。能使单片机产生这种读-修改-写操作的指令,其目的操作数一般为某I/O口或口的某一位,这些指令是:ANL,ORL,XRL,JBC,CPL,INC,DEC,DJNZ,MOV PXY,C,CLR PXY和SETB PXY等,它们的含义详见指令系统一章的说明。,第五章MCS-51单片机的硬件资源,综上所述,P0口既可作地址/数据总线口,这时它是真正的双向口,也可作通用I/O口,但只是一个准双向口。一般情况下,P0口已当作地址/数据口使用时,就不能再作通用I/O口使用。,P2口的位结构如图5-1(b)所示,它与P0口基本相同,只有输出部分略有不同,在输出FET的漏极接有上拉电阻,这种结构不必外接上拉
8、电阻就可驱动任何MOS输入电路,且能驱动四个LSTTL输入。P2口常用作外部存储器的高八位地址口。当不用作地址口时,P2口亦可作通用I/O口,这时它也是一个准双向I/O口。,二、P2口,第五章MCS-51单片机的硬件资源,第五章MCS-51单片机的硬件资源,三、P1口,第五章MCS-51单片机的硬件资源,四、P3口,P3口是一个双功能口,第一功能和P2口一样可作为通用I/O口。P3口工作于第二功能时,各位的定义如下:,第五章MCS-51单片机的硬件资源,第五章MCS-51单片机的硬件资源,由图5-1(d)P3口位结构可以看出,实现第一功能作通用I/O输出口时,选择输出功能端应保持高电平,使与非
9、门对锁存器Q端是畅通的。同理,实现第二功能做专用信号输出时,则该位的锁存器应置1,使与非门对选择输出功能端是畅通的。对输入而言,无论该位是作通用输入口还是作第二功能输入口,其输出锁存器和选择输出功能端都应置1,即使FET 截止。,由于所有口锁存器在上电复位时均置为1,自然满足了上述条件,所以用户不必做任何工作,就可以直接使用P3口的第二功能。至于第一功能,应在确信某一引脚第二功能提供的信号不用时,该引脚才可作I/O线使用,使用方法同与一般准双向口相同。,第五章MCS-51单片机的硬件资源,5.1.2 MCS51内部并行I/O口的应用,MCS51四个I/O端口共有三种操作方式:输出数据方式,读端
10、口数据方式和读端口引脚方式。,在数据输出方式下,CPU通过一条数据操作指令就可以把输出数据写入P0P3的端口锁存器,然后通过输出驱动器送到端口引脚。因此,凡是端口操作指令都能达到从端口引脚上输出数据的目的,例如如下指令均可在P0口输出数据:,MOV P0,A ;累加器A中的内容送P0口 ANL P0,A ;P0口的内容和A中的内容相与后送P0口,第五章 MCS-51单片机的硬件资源,读端口数据方式是一种仅对端口锁存器中数据进行读入的操作方式,CPU读入的这个数据并非端口引脚的数据。因此,CPU只要用一条传送指令就可把端口锁存器中的数据读入累加器A或内部RAM中来。例如,如下指令可以从P1口输入
11、数据:,MOV A, P1 ;P1锁存器中数据送A MOV 20H, P1 ; P1锁存器数据送内部20H单元,读引脚方式可从端口引脚上读入信息。在这种方式下,CPU首先必须使欲读端口引脚所对应的锁存器置1,以便驱动器中的T2管截止,然后打开输入三态缓冲器,使相应端口引脚上信号输入CPU内部数据总线。因此,在读引脚时必须连续使用两条指令。,第五章 MCS-51单片机的硬件资源,例如读P1口低四位引脚上的信号的程序为:,MOV P1,#0FH ;使P1口低4位锁存器置1 MOV A,P1 ;读P1口低4位引脚信号,I/O端口的应用举例:,一、I/O口直接用于输入/输出,在I/O口直接用作输入/输
12、出时,既可以把它们看作数据口也可以看作状态口,这由用户根据实际情况决定。,第五章 MCS-51单片机的硬件资源,例5.1 试编出模拟图5-2(a)中电路的程序。,对电路进行模拟是指模拟它的输出状态如何随输入状态的变化而变化。,第五章 MCS-51单片机的硬件资源,相应程序为:,ORG 0500H D BIT 00H E BIT 01H G BIT 02H LOOP1:ORL P1,#08H ;准备P1.3输入 LOOP2:MOV C,P1.3 ;检测K2状态 JC LOOP2 ;若未准备好(K2断开),则转 ; LOOP2 ORL P1,#03H ;若准备好了,则输入K0和K1状态 MOV C
13、,P1.0 ;K0状态送入D MOV D,C MOV C,P1.1 ;K1状态送入E MOV E,C ANL C, D ;D与E送G,第五章 MCS-51单片机的硬件资源,第五章 MCS-51单片机的硬件资源,二、 I/O口对外部锁存器的接口,第五章 MCS-51单片机的硬件资源,MOV DPTR, #7FFFH ;DPTR指向74LS373端口 MOVX A, DPTR ;输入数据,应当注意:8031也可以通过外部锁存器输出数据,但由于8031内部每个I/O端口都带有8位锁存器,因此只有扩展I/O端口时才需要利用外部锁存器来输出数据。,第五章 MCS-51单片机的硬件资源,5.2 MCS-5
14、1中断系统,5.2.1中断概述,一、中断和中断系统,CPU正在处理某件事的时候,外部发生了另一事件,请求CPU迅速处理,CPU暂时停止当时的工作,转入处理所发生的事件,处理结束后,再回到原来的地方,继续原来的工作,这样的过程称为中断,如图5-4所示。,第五章 MCS-51单片机的硬件资源,中断系统实现中断功能的部件,中断源产生中断请求的源,二、中断优先级,一般计算机系统允许有多个中断源。当几个中断源同时向CPU请求中断,要求服务时,就存在CPU优先响应哪一个中断请求的问题。为此系统根据中断源的轻重缓急进行排队,规定每个中断源都有一个中断优先级别,优先处理最紧急事件的中断请求。,第五章 MCS-
15、51单片机的硬件资源,三、中断嵌套,中断嵌套是指CPU正在处理一个中断源请求的时候,又发生了另一个优先级比它高的中断源请求,如果CPU能够暂时中止执行原来的处理程序,转而去处理优先级更高的中断请求,处理结束后,再继续执行原来的低级中断处理程序的过程。,第五章 MCS-51单片机的硬件资源,四、中断过程,对于不同的计算机,中断过程可能不尽相同,但是一般应包括中断请求、中断响应、中断处理和中断返回等四个步骤。,1.中断请求,中断过程是由中断源向CPU发出中断请求而开始的。有效中断请求信号应该一直保持到CPU作出响应为止。,2.中断响应,CPU检测到中断请求信号后,在满足一定条件的情况下进行响应。其
16、主要条件是:中断标志是否开放,是否高级中断,是否执行完一条指令等。,第五章 MCS-51单片机的硬件资源,3.中断处理,中断处理或称为中断服务,就是执行中断源所要求的中断服务程序。在中断服务程序中需要完成的主要工作是:,保护现场根据需要把断点处有关存储器的内容压入堆栈,以保护主程序运行的结果。,开/关中断标志根据CPU响应中断后开/关中断情况,适当处理中断标志,以确保保护/恢复现场的正确进行,确保所需中断嵌套的实现。,中断处理根据中断源的要求,完成相应的任务,这是中断服务的核心。,第五章 MCS-51单片机的硬件资源,恢复现场在完成中断服务之后,返回被中断的主程序之前,恢复堆栈中保护的各有关寄
17、存器的内容。,4.中断返回,在中断服务程序后,用一条中断返回指令(RETI),保证返回主程序继续执行被中断的程序。,5.2.2 MCS-51中断系统与控制,MCS51的51子系列(8031、8051、8751等)有5个中断源,52子系列(8032、8052等)有6个中断源,它们均有两个优先级,通过4个中断控制器(IE、IP、TCON、SCON)进行中断管理,其结构原理如图5-6所示。,第五章 MCS-51单片机的硬件资源,第五章 MCS-51单片机的硬件资源,一、中断源,CPU在每个机器周期的S5P2检测上的信号。,第五章 MCS-51单片机的硬件资源,对于电平方式,只要检测到低电平信号即为有
18、效申请;对于脉冲方式,则需要比较两次检测到的信号,才能确定中断请求信号是否有效,并且中断请求信号高低电平的状态都应至少维持一个机器周期,以确保电平变化能被单片机检测到。,思考:,脉冲触发方式下,外部中断脉冲的最高触发频率为系统振荡频率的多少倍?, 内部中断除外部中断源外,内部还有TF0、TF1、TI、RI分别为定时器/计数器中断和发送/接收中断的中断源。,第五章 MCS-51单片机的硬件资源,二、中断控制,MCS-51单片机设置了4个专用寄存器用于中断控制 ,用户通过设置其状态来管理中断系统。,1.定时器控制寄存器(TCON),TCON的格式如下:,TCON D7 D6 D5 D4 D3 D2
19、 D1 D0,(88H),如前所述,寄存器中TR1(TR0)用于定时器/计数器的启动控制,其余6位用于中断控制,其作用如下:,第五章 MCS-51单片机的硬件资源,IT0为外部中断0请求信号方式控制位。IT0 = 1,脉冲方式(负跳变有效);IT0 = 0,电平方式(低电平有效)。,IT1为外部中断1请求信号方式控制位,其作用同IT0。,IE1为外部中断1请求标志位,其作用同IE0。,TF0(TF1)为定时器/计数器溢出标志位,此标志作用将在定时器/计数器一节说明。,第五章 MCS-51单片机的硬件资源,2.串行口控制寄存器(SCON),SCON格式如下:,SCON D7 D6 D5 D4 D
20、3 D2 D1 D0,(98H),串行口控制寄存器格式及各位功能将在串行接口一节介绍,其中高6位用于串行口控制,低2位(RI、TI)用于中断控制,其作用如下:,TI为串行口发送中断请求标志位,发送完一帧串行数据后,由硬件置1,其清零须由软件完成。,第五章 MCS-51单片机的硬件资源,RI为串行口接收中断请求标志位,接完一帧串行数据后,由硬件置1,其清零由软件完成。,在MCS-51单片机串行口中,TI和RI的逻辑“或”作为一个内部中断源,二者之一置位都可以产生串行口中断请求,然后在中断服务程序中测试这两个标志位,以决定是发送中断还是接收中断。,3.中断允许控制寄存器(IE),中断允许寄存器格式
21、如下:,IE D7 D6 D5 D4 D3 D2 D1 D0,(A8H),第五章 MCS-51单片机的硬件资源,ES为串行口中断允许位,ES=1时,允许串行口中断;ES=0时,禁止串行口中断。,寄存器中用于控制中断的共6位,实现中断的管理,其作用如下:,EX1为外部中断1允许控制位,EX1=1允许外部中 断1中断,EX1=0,禁止外部中断1中断。,ET1为定时器/计数器1(T1)中断允许控制位,ET1=1时,允许T1中断;ET1=0时,禁止T1中断。,ET0为定时器/计数器0(T0)中断允许控制位,其控制功能同ET1。,EX0为外部中断0允许控制位,其控制功能同EX1。,MCS-51单片机的硬
22、件资源,MCS51单片机中断系统的管理是由中断允许总控制位EA和各中断源的中断控制位联合作用实现的,缺一不可。,4.中断优先级控制寄存器(IP),中断优先级控制寄存器的格式如下:,IP D7 D6 D5 D4 D3 D2 D1 D0,(B8H),MCS-51单片机规定了两级中断优先级:高级中断和低级中断,用中断优先级寄存器(IP)的5位状态管理5个中断源的优先级别。相应位是“0”的中断源为低级中断,相应位是“1”的中断源为高级中断。,MCS-51单片机的硬件资源,各状态位的作用如下:,PS为串行口中断优先控制位,PS = 1,串行口为高优先级中断;PS = 0,串行口为低优先级中断。,PT1为
23、定时器/计数器1(T1)中断优先控制位,PT1 = 1,T1为高优先级中断,PT1 = 0,T1为低优先级中断。,PT0为定时器/计数器优先控制位,PT0 = 1,T0为高优先级中断;PT0 = 0,T0为低优先级中断。,PX0为外部中断0中断优先控制位,PX0 = 1,外部中断0为高优先级中断;PX0 = 0,外部中断0为低优先级中断,MCS-51单片机的硬件资源,PX0为外部中断0中断优先控制位,PX0 = 1,外部中断0为高优先级中断;PX0 = 0,外部中断0为低优先级中断。,MCS51单片机优先级的控制原则是:,为了实现中断嵌套,高优先级中断请求可以中断低优先级的中断服务;反之则不允
24、许。,同等优先级中断源之间不能中断对方的中断服务过程。,多个同级中断源同时产生中断请求时,则按查询顺序确定哪个中断请求先被响应。MCS51单片机规定的查询顺序是:外部中断0、定时器/计数器0、外部中断1、定时器/计数器1和串行口中断。,MCS-51单片机的硬件资源,5.2.3 中断响应,一、中断响应过程,MCS51单片机在每个机器周期的S6状态按优先级顺序查询中断标志,如果查询到某个标志位为“1”,则表明有中断请求发生,以下一个机器周期的S1状态开始响应中断。但是,出现下列情况之一时,中断不能进行:, CPU正在为高级或同级的中断服务;, 查询中断请求的机器周期不是当前指令的最后一个机器周期(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课件 第五
链接地址:https://www.31doc.com/p-3488338.html