微型计算机原理及应用第11章常用可编程接口_第1页
微型计算机原理及应用第11章常用可编程接口_第2页
微型计算机原理及应用第11章常用可编程接口_第3页
微型计算机原理及应用第11章常用可编程接口_第4页
微型计算机原理及应用第11章常用可编程接口_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

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

文档简介

1、1微型计算机原理及应用22 2可编程并行接口可编程并行接口8255A8255A可编程计数器可编程计数器/ /定时器定时器825382531 13 8255 8255是为是为80808080,80858085和和80888088微型机系微型机系统设计的统设计的并行并行I/OI/O接口接口芯片。芯片。482558255的内部组成如下图所示的内部组成如下图所示1.1 82551.1 8255的组成与接口信号的组成与接口信号5 l端口端口A(Port A)A(Port A)、端口、端口B(Port B)B(Port B)和端口和端口C(Port C)C(Port C)都是都是8 8位的端口,都可以选择

2、作为输入或输出。位的端口,都可以选择作为输入或输出。l可以将端口可以将端口C C的高的高4 4位和低位和低4 4位分开使用,分别作为位分开使用,分别作为输入和输出。输入和输出。l端口端口A A和端口和端口B B作为选通输入或输出的数据端口时,作为选通输入或输出的数据端口时,端口端口C C的指定位与端口的指定位与端口A A和端口和端口B B配合使用,用作控配合使用,用作控制信号或状态信号。制信号或状态信号。1. 1. 端口端口A A、端口、端口B B和端口和端口C C1.1 82551.1 8255的组成与接口信号的组成与接口信号6l根据根据CPUCPU的方式命令字控制的方式命令字控制82558

3、255的工作方式。的工作方式。l根据根据CPUCPU的命令对端口的命令对端口C C的每一位实现按位复位或置的每一位实现按位复位或置位。位。 lA A组控制电路控制端口组控制电路控制端口A A和端口和端口C C的上半部的上半部(PC7(PC7PC4)PC4)。lB B组控制电路控制端口组控制电路控制端口B B和端口和端口C C的下半部的下半部(PC3(PC3PC0)PC0)。2.A2.A组和组和B B组控制电路组控制电路1.1 82551.1 8255的组成与接口信号的组成与接口信号7 这是一个三态双向的这是一个三态双向的8 8位缓冲器,它是位缓冲器,它是82558255与与系统数据总线的接口。

4、输入输出的数据以及系统数据总线的接口。输入输出的数据以及CPUCPU发发出的命令控制字和外设的状态信息,都是通过这出的命令控制字和外设的状态信息,都是通过这个缓冲器传送的。个缓冲器传送的。3. 3. 数据总线缓冲器数据总线缓冲器1.1 82551.1 8255的组成与接口信号的组成与接口信号8l控制把控制把CPUCPU的控制命令或输出数据送至相应的端口的控制命令或输出数据送至相应的端口, , l控制把外设的状态信息或输入数据通过相应的端口控制把外设的状态信息或输入数据通过相应的端口送至送至CPUCPU。4.4.读读/ /写控制逻辑写控制逻辑1.1 82551.1 8255的组成与接口信号的组成

5、与接口信号9 (1)A1 (1)A1、A0 A0 端口选择:用来选择端口选择:用来选择A A、B B、C 3C 3个端个端口和控制字寄存器。通常,它们与口和控制字寄存器。通常,它们与PCPC微机的地址线微机的地址线A1A1和和A0A0相连。相连。 (2)CS (2)CS选片信号:低电平有效,由它启动选片信号:低电平有效,由它启动CPUCPU与与82558255之间的通信。通常,它与之间的通信。通常,它与PCPC微机地址线的译码微机地址线的译码电路的输出线相连,并由该译码电路的输出线来确电路的输出线相连,并由该译码电路的输出线来确定定82558255的端口地址。的端口地址。4.4.读读/ /写控

6、制逻辑写控制逻辑1.1 82551.1 8255的组成与接口信号的组成与接口信号10 (3)RD (3)RD读信号:低电平有效,它控制读信号:低电平有效,它控制82558255送出数送出数据或状态信息至系统数据总线。通常,它与据或状态信息至系统数据总线。通常,它与PCPC微机微机的的IORIOR相连。相连。 (4)WR(4)WR写信号:低电平有效,它控制把写信号:低电平有效,它控制把CPUCPU输出输出到系统数据总线上的数据或命令写到到系统数据总线上的数据或命令写到82558255。通常,。通常,它与它与PCPC微机的微机的IOWIOW相连。相连。4.4.读读/ /写控制逻辑写控制逻辑1.1

7、82551.1 8255的组成与接口信号的组成与接口信号11 (5)RESET (5)RESET 复位信号:高电平有效,它清除控制寄复位信号:高电平有效,它清除控制寄存器,并置存器,并置A A、B B、C 3C 3个端口为输入方式。个端口为输入方式。 82558255与与CPUCPU的连接及复位信号产生电路如下图所示。的连接及复位信号产生电路如下图所示。4.4.读读/ /写控制逻辑写控制逻辑1.1 82551.1 8255的组成与接口信号的组成与接口信号12 A A1 1,A A0 0和和CSCS,RDRD,WRWR及组合所实现的各种功能及组合所实现的各种功能如下:如下:1.1 82551.1

8、 8255的组成与接口信号的组成与接口信号A1 A1 A0 A0 操操 作作 0 01 10 00 00 0写端口写端口 0 01 10 00 01 1写端口写端口 0 01 10 01 10 0写端口写端口 0 01 10 01 11 1写控制字寄存器写控制字寄存器 0 00 01 10 00 0读端口读端口 0 00 01 10 01 1读端口读端口 0 00 01 11 10 0读端口读端口 0 00 01 11 11 1无操作无操作 13 82558255有有3 3种工作方式,由方式选择控制字来选用:种工作方式,由方式选择控制字来选用: (1) (1)方式方式0 (Mode 0)-0

9、(Mode 0)-基本输入输出。基本输入输出。 (2) (2)方式方式1 (Mode 1)-1 (Mode 1)-选通输入输出。选通输入输出。 (3) (3)方式方式2 (Mode 2)-2 (Mode 2)-双向传送。双向传送。1.2 82551.2 8255的工作方式与的工作方式与控制控制字字141.1.方式选择控制字方式选择控制字1.2 82551.2 8255的工作方式与的工作方式与控制控制字字152.2.按位置位按位置位/ /复位控制字复位控制字 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字16 如:端口如:端口C C的的bit3bit3(PCPC3 3)的置

10、位控制字为)的置位控制字为00000111B(07H)00000111B(07H),复位控制字为,复位控制字为00000110B(06H)00000110B(06H)。 注意:注意: C C端口的按位置位端口的按位置位/ /复位控制字须跟在方式选择控制字复位控制字须跟在方式选择控制字之后写入控制字寄存器。即使仅使用该功能,也应先之后写入控制字寄存器。即使仅使用该功能,也应先选送一方式控制字。选送一方式控制字。1.2 82551.2 8255的工作方式与的工作方式与控制控制字字17 例例1 1 将将8255 C8255 C端口的端口的8 8根根I/OI/O线接线接8 8只发光二极管的正只发光二极

11、管的正极极( (八个负极均接地八个负极均接地) ),用按位置位,用按位置位/ /复位控制字编写复位控制字编写使这使这8 8只发光二极管依次亮、灭的程序。设只发光二极管依次亮、灭的程序。设82558255的端的端口地址为口地址为380H380H383H383H。 本程序要使用本程序要使用82558255的的2 2个控制字个控制字-方式选择字和方式选择字和按位置位按位置位/ /复位字。这复位字。这2 2个控制字都写入个控制字都写入82558255的控制的控制字寄存器,由它们的字寄存器,由它们的D D7 7位为位为1 1或或0 0来区别写入的字是来区别写入的字是方式选择字还是置位方式选择字还是置位/

12、 /复位字。复位字。82558255的控制字寄存器的控制字寄存器的端口地址为的端口地址为383H383H。方式选择字只写入一次,其后。方式选择字只写入一次,其后写入的都是置位写入的都是置位/ /复位字。复位字。1.2 82551.2 8255的工作方式与的工作方式与控制控制字字1882558255与与PCPC微机的连接及微机的连接及8255 C8255 C端口与端口与8 8只发光二极管只发光二极管的连接如图。的连接如图。1.2 82551.2 8255的工作方式与的工作方式与控制控制字字19程序框图程序框图1.2 82551.2 8255的工作方式与的工作方式与控制控制字字20stacksta

13、ck segment stack segment stack stackstack dw 32 dup (0) dw 32 dup (0)stackstack ends endscode code segment segmentbeginbegin proc far proc far assume ss: stack, cs: code assume ss: stack, cs: code push ds push ds sub ax, ax sub ax, ax push ax push ax1.2 82551.2 8255的工作方式与的工作方式与控制控制字字21 MOV DXMOV DX,

14、383H 383H ;383H383H为控制字寄存器的端口地址为控制字寄存器的端口地址 MOV AL,80H MOV AL,80H ;方式选择字;方式选择字 OUT DX OUT DX,ALAL MOV AL,1 MOV AL,1 ;PC0PC0的置位控制字的置位控制字AGAIN: OUT DX,AL AGAIN: OUT DX,AL ;点亮一只发光二极管;点亮一只发光二极管 LOOP $ LOOP $ ;延时;延时 LOOP $LOOP $ AND AL,0FEH AND AL,0FEH ;置位字改为复位字;置位字改为复位字 OUT DX,AL OUT DX,AL ;熄灭点亮的发光二极管;熄

15、灭点亮的发光二极管 ADD AL,3 ADD AL,3 ;PCiPCi+1PCiPCi+1,复位字改为下一位的置位字,复位字改为下一位的置位字 AND AL,0FHAND AL,0FH ;保持;保持D7D7为为0 0 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字22 PUSH AXPUSH AX MOV AH,11 MOV AH,11 ;检查键盘有无输入;检查键盘有无输入 INT 21H INT 21H ;无;无0 0送送ALAL,有,有-1-1送送ALAL INC AL INC AL POP AX POP AX JNZ AGAIN JNZ AGAIN ret retb

16、egin endpbegin endpcodecode ends ends end begin end begin1.2 82551.2 8255的工作方式与的工作方式与控制控制字字23 这是一种基本的这是一种基本的I/OI/O方式。在这种工作方式下,方式。在这种工作方式下,3 3个端口都可由程序选定作输入或输出。它们的输出个端口都可由程序选定作输入或输出。它们的输出是锁存的,输入是不锁存的。是锁存的,输入是不锁存的。 在这种工作方式下,可以由在这种工作方式下,可以由CPUCPU用简单的输入或用简单的输入或输出指令来进行读或写。因而当方式输出指令来进行读或写。因而当方式0 0用于无条件传用于无

17、条件传送方式的接口电路时是十分简单的,这时不需要状送方式的接口电路时是十分简单的,这时不需要状态端口,态端口,3 3个端口都可作为数据端口。个端口都可作为数据端口。1.3 1.3 三种工作方式的功能三种工作方式的功能1. 1. 方式方式0 024若将例若将例1 1改为改为C C端口方式端口方式0 0输出,则控制程序为:输出,则控制程序为:stackstack segment stack segment stack stackstack dw 32 dup (0) dw 32 dup (0)stackstack ends endscode code segment segmentbeginbeg

18、in proc far proc far assume ss: stack, cs: code assume ss: stack, cs: code push ds push ds sub ax, ax sub ax, ax push ax push ax MOV DX,383H MOV DX,383H MOV AL,80H MOV AL,80H OUT DX,AL OUT DX,AL1.3 1.3 三种工作方式的功能三种工作方式的功能25 MOV DX,382H MOV DX,382H ;C C端口的端口地址送端口的端口地址送DXDX MOV AL,1 MOV AL,1 ;C C端口的输出值

19、端口的输出值AGAIN: OUT DX,ALAGAIN: OUT DX,AL LOOP $ LOOP $ ;延时;延时 LOOP $LOOP $ PUSH AX PUSH AX MOV AH,11 MOV AH,11 ;1111号功能调用:检查键盘有无输入号功能调用:检查键盘有无输入 INT 21H INT 21H ;无;无0 0送送ALAL,有,有-1-1送送ALAL INC AL INC AL ;有键入,;有键入,AL=-1AL=-1,ALAL增增1 1,AL=0AL=0 POP AX POP AX JZ BACK JZ BACK ROL AL,1 ROL AL,1 ;改变;改变C C端口

20、的输出值端口的输出值 JMP AGAIN JMP AGAINBACK: retBACK: ret1.3 1.3 三种工作方式的功能三种工作方式的功能26beginbegin endp endpcodecode ends ends end begin end begin 方式方式0 0也可作为查询式输入或输出的接口电也可作为查询式输入或输出的接口电路,此时端口路,此时端口A A和和B B分别可作为一个数据端口,而分别可作为一个数据端口,而取端口取端口C C的某些位作为这两个数据端口的控制和状的某些位作为这两个数据端口的控制和状态信息。态信息。1.3 1.3 三种工作方式的功能三种工作方式的功能2

21、7 这是一种选通的这是一种选通的I/OI/O方式。它将方式。它将3 3个端口分为个端口分为A A、B B两组,端口两组,端口A A和端口和端口C C中的中的PCPC3 3PCPC5 5或或PCPC3 3、PCPC6 6、PCPC7 7 3 3位为位为A A组;端口组;端口B B和端口和端口C C的的PCPC2 2PCPC0 0 3 3位为位为B B组。端口组。端口C C中余下的两位,仍可作为输入或输出用,由方式控中余下的两位,仍可作为输入或输出用,由方式控制字中的制字中的D D3 3来设定。端口来设定。端口A A和和B B都可以由程序设定为输都可以由程序设定为输入或输出。此时端口入或输出。此时

22、端口C C的某些位为控制状态信号,用的某些位为控制状态信号,用于联络和中断,其各位的功能是固定的,不能用程于联络和中断,其各位的功能是固定的,不能用程序改变。序改变。2. 2. 方式方式1 11.3 1.3 三种工作方式的功能三种工作方式的功能28l 方式方式1 1输入输入的状态控制信号及其时序关系如图。的状态控制信号及其时序关系如图。1.3 1.3 三种工作方式的功能三种工作方式的功能29 (1) STB(1) STB(strobe) (strobe) 选通信号,低电平有效。这是选通信号,低电平有效。这是由外设发出的输入信号,信号的前沿由外设发出的输入信号,信号的前沿( (下降沿下降沿) )

23、,把,把输入装置送来的数据送入输入缓冲器;信号的后沿输入装置送来的数据送入输入缓冲器;信号的后沿( (上升沿上升沿) )使使INTRINTR有效有效( (置置1)1)。 (2)IBF(2)IBF(input buffer full) (input buffer full) 输入缓冲器满信号输入缓冲器满信号,高电平有效。这是,高电平有效。这是82558255输出给外设的联络信号。输出给外设的联络信号。外设将数据送至输入缓冲器后,该信号有效;外设将数据送至输入缓冲器后,该信号有效;RDRD信信号的上升沿将数据送至数据线后,该信号无效。号的上升沿将数据送至数据线后,该信号无效。1.3 1.3 三种工

24、作方式的功能三种工作方式的功能30 (3)INTR(3)INTR(interrupt request) (interrupt request) 中断请求信号,高电中断请求信号,高电平有效。这是平有效。这是82558255的一个输出信号,可用作向的一个输出信号,可用作向CPUCPU申申请中断的请求信号,以要求请中断的请求信号,以要求CPUCPU服务。当服务。当IBFIBF为高和为高和INTE(INTE(中断允许中断允许) )为高时,由为高时,由STBSTB的上升沿的上升沿( (后沿后沿) )使其使其置为高电平。由置为高电平。由RDRD信号的下降沿信号的下降沿(CPU(CPU读取数据前读取数据前)

25、 )清清除为低电平。除为低电平。 (4)INTE(4)INTE(interrupt enable) (interrupt enable) 中断允许信号,端口中断允许信号,端口A A中断允许中断允许INTEAINTEA可由用户通过对可由用户通过对PCPC4 4的按位置位的按位置位/ /复复位来控制。而位来控制。而INTEINTEB B 由由PCPC2 2 的置位的置位/ /复位控制。复位控制。INTEINTE置位允许中断。置位允许中断。INTEINTE复位禁止中断。复位禁止中断。1.3 1.3 三种工作方式的功能三种工作方式的功能31例例2 2 用选通输入方式从用选通输入方式从A A端口输入端口

26、输入100100个个8 8位二进制位二进制数。数。 接口及其电路如下图所示。接口及其电路如下图所示。1.3 1.3 三种工作方式的功能三种工作方式的功能32stacksegment stack stack dw 32 dup (0)stackendsdatasegmentBUF DB 100 DUP (?)data endscode segmentbegin proc farassume ss: stack, cs: code, ds: datapush dssub ax, axpush ax控制程序:控制程序:1.3 1.3 三种工作方式的功能三种工作方式的功能33MOV ESMOV ES,

27、AXAXmov ax, datamov ax, datamov ds, axmov ds, axMOV DXMOV DX,38FH38FHMOV ALMOV AL,0B0H0B0HOUT DXOUT DX,ALALMOV ALMOV AL,9 9 ;PCPC4 4置置1 1,允许,允许A A端口中断端口中断OUT DXOUT DX,ALALMOV AXMOV AX,SEG IS8255 SEG IS8255 ;中断程序入口地址送中断向量表;中断程序入口地址送中断向量表MOV ESMOV ES:01C6H01C6H,AXAXMOV AXMOV AX,OFFSET IS8255OFFSET IS8

28、255MOV ESMOV ES:01C4H01C4H,AXAXMOV CXMOV CX,100100MOV BXMOV BX,0 0MOV DXMOV DX,38CH38CH1.3 1.3 三种工作方式的功能三种工作方式的功能34 IN ALIN AL,0A1H 0A1H ;读屏蔽字;读屏蔽字 AND AL AND AL,0FDH 0FDH ;改变屏蔽字,允许;改变屏蔽字,允许IRQ9IRQ9中断中断 OUT 0A1H OUT 0A1H,ALALROTTROTT: JMP $JMP $ LOOP ROTT LOOP ROTT IN AL,0A1H IN AL,0A1H ;恢复屏蔽字,禁止;恢复

29、屏蔽字,禁止IRQ9IRQ9中断中断 OR AL,2 OR AL,2 OUT 0A1H,AL OUT 0A1H,AL ret retIS8255: IN AL,DXIS8255: IN AL,DX MOV BUFBX,AL MOV BUFBX,AL INC BX INC BX MOV AL,61H MOV AL,61H ;指定中断结束命令;指定中断结束命令1.3 1.3 三种工作方式的功能三种工作方式的功能35 OUT 0A0H,AL OUT 0A0H,AL MOV AL,62H MOV AL,62H OUT 20H,AL OUT 20H,AL POP AX POP AX ;修改返址;修改返址

30、 INC AX INC AX INC AX INC AX PUSH AX PUSH AX IRET IRETbeginbegin endp endpcodecode ends ends end begin end begin1.3 1.3 三种工作方式的功能三种工作方式的功能36l 方式方式1 1输出输出的状态控制信号及其时序关系如图。的状态控制信号及其时序关系如图。1.3 1.3 三种工作方式的功能三种工作方式的功能37 (1) OBF(1) OBF输出缓冲器满信号输出缓冲器满信号,低电平有效。这是,低电平有效。这是82558255输出给外设的一个联络信号。输出给外设的一个联络信号。CPUC

31、PU把数据写入指定把数据写入指定端口的输出锁存器后,该信号有效,表示外设可以端口的输出锁存器后,该信号有效,表示外设可以把数据取走。它由把数据取走。它由ACKACK的前沿的前沿( (下降沿下降沿) )即外设取走即外设取走数据后,使其恢复为高。数据后,使其恢复为高。 (2)ACK(acknowledge)(2)ACK(acknowledge) 低电平有效。这是外设发出低电平有效。这是外设发出的响应信号,该信号的前沿取走数据并使的响应信号,该信号的前沿取走数据并使OBFOBF无效无效后沿使后沿使INTRINTR有效。有效。1.3 1.3 三种工作方式的功能三种工作方式的功能38(3)INTR (3

32、)INTR 中断请求信号中断请求信号,高电平有效。当输出装置已,高电平有效。当输出装置已经接受了经接受了CPUCPU输出的数据后,它用来向输出的数据后,它用来向CPUCPU提出中断提出中断请求,要求请求,要求CPUCPU继续输出数据。继续输出数据。OBFOBF为为“1 1”( (高电平高电平) )和和INTEINTE为为“1 1”( (高电平高电平) )时,由时,由ACKACK的后沿的后沿( (上升沿上升沿) ),使其置位,使其置位( (高电平高电平) ),WRWR信号的前沿信号的前沿( (下降沿下降沿) )使其使其复位复位( (低电平低电平) )。(4)INTE(4)INTEA A由由PCP

33、C6 6的置位的置位/ /复位控制。而复位控制。而INTEINTEB B由由PCPC2 2置置位位/ /复位控制。复位控制。INTEINTE置位允许中断。置位允许中断。1.3 1.3 三种工作方式的功能三种工作方式的功能39例例3 3 用用8 8只发光二极管及时反映只发光二极管及时反映8 8个监控量的状态个监控量的状态,设计接口电路和控制程序。,设计接口电路和控制程序。 用用8 8个开关模拟个开关模拟8 8个监控量的状态。个监控量的状态。A A端口输入端口输入8 8个个监控量的状态,监控量的状态,B B端口接端口接8 8只发光二极管。只发光二极管。A A端口基端口基本输入,本输入,B B端口选

34、通输出,用单稳电路来产生选通端口选通输出,用单稳电路来产生选通信号信号ACKACK。当需要了解。当需要了解8 8个监控量的状态时发来选通个监控量的状态时发来选通信号信号ACKACK,该信号使控制程序进入中断服务程序。,该信号使控制程序进入中断服务程序。在中断服务程序中,从在中断服务程序中,从A A端口输入端口输入8 8个监控量的状态个监控量的状态后立即从后立即从B B端口输出。端口输出。1.3 1.3 三种工作方式的功能三种工作方式的功能40接口电路接口电路1.3 1.3 三种工作方式的功能三种工作方式的功能41stackstack segment stack segment stack st

35、ackstack dw 32 dup(0) dw 32 dup(0)stack endsstack endsdatadata segment segmentDA1 DA1 DB DB WAIT INTERRUPTWAIT INTERRUPT , 0DH, 0AH, , 0DH, 0AH, $ $ data data ends endscode code segment segmentbeginbegin proc far proc far assume ss: stack, cs: code, ds: data assume ss: stack, cs: code, ds: data push

36、 ds push ds sub ax, ax sub ax, ax push ax push ax控制程序:控制程序:1.3 1.3 三种工作方式的功能三种工作方式的功能42MOV ES,AXMOV ES,AXmov ax, datamov ax, datamov ds, axmov ds, axMOV DX,393HMOV DX,393HMOV AL,94HMOV AL,94HOUT DX,ALOUT DX,ALMOV AL,5 MOV AL,5 ;PC2PC2置置1 1,允许,允许B B端口中断端口中断OUT DX,ALOUT DX,ALMOV AX,SEG IO8255 MOV AX,S

37、EG IO8255 ;中断程序入口地址送中断向量表;中断程序入口地址送中断向量表MOV ES:01C6H,AXMOV ES:01C6H,AXMOV AX,OFFSET IO8255MOV AX,OFFSET IO8255MOV ES:01C4H,AXMOV ES:01C4H,AXIN AL,0A1H IN AL,0A1H ;读屏蔽字;读屏蔽字AND AL,0FDH AND AL,0FDH ;改变屏蔽字,允许;改变屏蔽字,允许IRQ9IRQ9中断中断OUT DX,ALOUT DX,AL1.3 1.3 三种工作方式的功能三种工作方式的功能43ROTT: MOC DX,OFFSET DA1ROTT:

38、 MOC DX,OFFSET DA1 MOV AH,9 MOV AH,9 INT 21H INT 21H JMP $ JMP $ MOV AH,11 MOV AH,11 INT 21H INT 21H CMP AL,0 CMP AL,0 JE ROTT JE ROTT IN AL,0A1H IN AL,0A1H ;恢复屏蔽字,禁止;恢复屏蔽字,禁止IRQ9IRQ9中断中断 OR AL,2 OR AL,2 OUT 0A1H,AL OUT 0A1H,AL ret ret1.3 1.3 三种工作方式的功能三种工作方式的功能44IO8255: MOV DX,390HIO8255: MOV DX,390

39、H IN AL,DX IN AL,DX INC DX INC DX OUT DX,AL OUT DX,AL MOV AL,61H MOV AL,61H ;指定中断结束命令;指定中断结束命令 OUT 0A0H,AL OUT 0A0H,AL MOV AL,62H MOV AL,62H OUT 20H,AL OUT 20H,AL POP AX POP AX ;修改返址;修改返址 INC AX INC AX INC AX INC AX PUSH AX PUSH AX IRET IRETbeginbegin endp endpcodecode ends ends end begin end begin1

40、.3 1.3 三种工作方式的功能三种工作方式的功能45 这种工作方式,使外设可在单一的这种工作方式,使外设可在单一的8 8位数据位数据总线上,既能发送,又能接收数据总线上,既能发送,又能接收数据( (双向总线双向总线I/O)I/O)。方式。方式2 2只限于只限于A A组使用,它用双向总线端口组使用,它用双向总线端口A A和控和控制端口制端口C C中的中的5 5位进行操作,此时,端口位进行操作,此时,端口B B可用于方可用于方式式0 0或方式或方式1 1。端口。端口C C的其他的其他3 3位作位作I/OI/O用或作端口用或作端口B B控制状态信号线用。控制状态信号线用。. . 方式方式1.3 1

41、.3 三种工作方式的功能三种工作方式的功能46方式方式2 2状态控制信号:状态控制信号:1.3 1.3 三种工作方式的功能三种工作方式的功能47INTEINTE1 1是输出的中断允许信号,由是输出的中断允许信号,由PCPC6 6的置位的置位/ /复位控制复位控制INTEINTE2 2是输入的中断允许信号,由是输入的中断允许信号,由PCPC4 4的置位的置位/ /复位控制复位控制其他信号的作用及意义与方式其他信号的作用及意义与方式1 1相同。相同。1.3 1.3 三种工作方式的功能三种工作方式的功能48可编程并行接口可编程并行接口8255A8255A可编程计数器可编程计数器/ /定时器定时器82

42、5382531 12 249可编程计数器可编程计数器/ /定时器定时器82538253 IntelIntel系列的计数器系列的计数器/ /定时器电路为可编程序间定时器电路为可编程序间隔定时器隔定时器PIT(programmable interval timer)PIT(programmable interval timer),型,型号为号为82538253,改进型为,改进型为82548254。82538253具有具有3 3个独立的功能个独立的功能完全相同的完全相同的1616位计数器,每个计数器都有位计数器,每个计数器都有6 6种工作方种工作方式,这式,这6 6种工作方式都可以由其控制字设定,因

43、而能种工作方式都可以由其控制字设定,因而能以以6 6种不同的工作方式满足不同的接口要求。种不同的工作方式满足不同的接口要求。CPUCPU还还可以随时更改它们的方式和计数值,并读取它们的计可以随时更改它们的方式和计数值,并读取它们的计数状态。数状态。5082538253的内部结构:的内部结构:.1 .1 82538253的组成与接口信号的组成与接口信号51 数据总线缓冲器是三态、双向、数据总线缓冲器是三态、双向、8 8位的缓冲器,用位的缓冲器,用作系统总线和作系统总线和82538253的接口,根据的接口,根据CPUCPU的输入或输出指令的输入或输出指令实现数据传送。数据总线缓冲器具有下面实现数据

44、传送。数据总线缓冲器具有下面3 3个基本功能个基本功能。 (1) CPU (1) CPU向向82538253所写的控制字经数据总线缓冲器和所写的控制字经数据总线缓冲器和82538253的内部数据总线传送给控制字寄存器寄存。的内部数据总线传送给控制字寄存器寄存。 (2) CPU (2) CPU向某计数器所写的计数初值经它和内部总线送向某计数器所写的计数初值经它和内部总线送到指定的计数器。到指定的计数器。 (3) CPU (3) CPU读取某个计数器的现行值时,该现行值经内部读取某个计数器的现行值时,该现行值经内部总线和缓冲器传送到系统的数据总线上,被总线和缓冲器传送到系统的数据总线上,被CPUC

45、PU读入。读入。1. 1. 数据总线缓冲器数据总线缓冲器.1 .1 82538253的组成与接口信号的组成与接口信号52 读读/ /写逻辑接收系统总线的写逻辑接收系统总线的5 5个输入信号,根据个输入信号,根据这这5 5个信号产生整个器件操作的控制信号。通过片个信号产生整个器件操作的控制信号。通过片选信号选信号CSCS来控制读来控制读/ /写逻辑的工作,在没有被系统写逻辑的工作,在没有被系统逻辑选中时,读逻辑选中时,读/ /写逻辑操作功能不会发生变化。写逻辑操作功能不会发生变化。根据根据A A1 1A A0 0的输入选择的输入选择3 3个计数器和控制字寄存器。个计数器和控制字寄存器。通过通过R

46、DRD或或WRWR完成指定的读或写操作。完成指定的读或写操作。2. 2. 读读/ /写逻辑写逻辑.1 .1 82538253的组成与接口信号的组成与接口信号53 CSCS、RDRD、WRWR、A1A1和和A0A0组合起来所产生的选择与操组合起来所产生的选择与操作功能:作功能:.1 .1 82538253的组成与接口信号的组成与接口信号54 控制字寄存器寄存数据缓冲器传送来的控制字。控制字寄存器寄存数据缓冲器传送来的控制字。控制字寄存器有控制字寄存器有3 3个个,都是,都是8 8位的寄存器,分别对应位的寄存器,分别对应于于3 3个计数器。个计数器。写入的控制字由该控制字的最高写入的控制字由该控制

47、字的最高2 2位位确定送入哪个计数器的控制字寄存器寄存。确定送入哪个计数器的控制字寄存器寄存。各自的各自的控制字寄存器决定各自计数器的工作方式和所执行控制字寄存器决定各自计数器的工作方式和所执行的操作。控制字寄存器只能写入,其值不能读出。的操作。控制字寄存器只能写入,其值不能读出。3. 3. 控制字寄存器控制字寄存器.1 .1 82538253的组成与接口信号的组成与接口信号55计数器计数器0 0、计数器、计数器1 1和计数器和计数器2 2是是3 3个独立的计数器,它个独立的计数器,它们的内部结构相同。们的内部结构相同。4.4.计数器计数器0 0、计数器、计数器1 1和计数器和计数器2 2.1

48、 .1 82538253的组成与接口信号的组成与接口信号56 写入计数器的初始值保存在计数初值寄存器中,写入计数器的初始值保存在计数初值寄存器中,由由CLKCLK脉冲的一个上升沿和一个下降沿将其装入减脉冲的一个上升沿和一个下降沿将其装入减1 1计数器。减计数器。减1 1计数器在计数器在CLKCLK脉冲脉冲(GATE(GATE允许允许) )作用下进作用下进行递减计数,直至计数值为行递减计数,直至计数值为0 0,输出,输出OUTOUT信号。输出信号。输出寄存器的值跟随减寄存器的值跟随减1 1计数器变化,仅当写入锁存控制计数器变化,仅当写入锁存控制字时,它锁存减字时,它锁存减1 1计数器的当前计数值

49、计数器的当前计数值( (减减1 1计数器可计数器可继续计数继续计数) ),CPUCPU读取后,它自动解除锁存状态,又读取后,它自动解除锁存状态,又跟随减跟随减1 1计数器变化。所以在计数过程中,计数器变化。所以在计数过程中,CPUCPU随时随时可以用指令读取任一计数器的当前计数值,这一操可以用指令读取任一计数器的当前计数值,这一操作对计数没有影响。计数初值寄存器,减作对计数没有影响。计数初值寄存器,减1 1计数器和计数器和输出寄存器都可看作是输出寄存器都可看作是8 8位的寄存器对。位的寄存器对。.1 .1 82538253的组成与接口信号的组成与接口信号57 每个计数器都是对输入的每个计数器都

50、是对输入的CLKCLK脉冲按二进制或十进脉冲按二进制或十进制的预置值开始递减计数。若输入的制的预置值开始递减计数。若输入的CLKCLK是频率精是频率精确的时钟脉冲,则计数器可作为定时器。确的时钟脉冲,则计数器可作为定时器。在计数过在计数过程中,计数器受门控信号程中,计数器受门控信号GATEGATE的控制。的控制。计数器的输计数器的输入入CLKCLK与输出与输出OUTOUT以及门控信号以及门控信号GATEGATE之间的关系,取之间的关系,取决于计数器的工作方式。决于计数器的工作方式。.1 .1 82538253的组成与接口信号的组成与接口信号5882538253的计数器有的计数器有6 6种工作方

51、式:种工作方式: (1) (1)方式方式0-0-计数结束中断计数结束中断 (2) (2)方式方式1-1-硬件触发单拍脉冲硬件触发单拍脉冲 (3) (3)方式方式2-2-频率发生器频率发生器 (4) (4)方式方式3-3-方波发生器方波发生器 (5) (5)方式方式4-4-软件触发选通软件触发选通 (6) (6)方式方式5-5-硬件触发选通硬件触发选通.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系591.1.计数器的输出计数器的输出 OUTOUT6 6种工作方式的输出信号如下图所示。种工作方式的输出信号如下图所示。.2 .2计数器的工作方式及其与输入输出的关系

52、计数器的工作方式及其与输入输出的关系60 6 6种工作方式中,只有方式种工作方式中,只有方式0 0在写入控制字后输出在写入控制字后输出为低,其他为低,其他5 5种方式,都是在写入控制字后输出为高。种方式,都是在写入控制字后输出为高。 方式方式2 2、4 4、5 5的输出波形是相同的,都是宽度为一的输出波形是相同的,都是宽度为一个个CLKCLK周期的负脉冲。但方式周期的负脉冲。但方式2 2是连续工作,方式是连续工作,方式4 4由软由软件件( (设置计数值设置计数值) )触发启动,而方式触发启动,而方式5 5由门控脉冲触发启由门控脉冲触发启动。动。 方式方式5 5与方式与方式1 1的工作方式基本相

53、同,但输出波形的工作方式基本相同,但输出波形不同,方式不同,方式1 1的输出为宽度是的输出为宽度是N N个个CLKCLK脉冲的低电平脉冲脉冲的低电平脉冲( (计数过程中输出为低计数过程中输出为低) ),而方式,而方式5 5的输出为宽度是的输出为宽度是1 1个个CLKCLK脉冲的负脉冲脉冲的负脉冲( (计数过程中输出为高计数过程中输出为高) )。.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系61 方式方式3 3和方式和方式2 2的输出都是周期性的,它们的主要的输出都是周期性的,它们的主要区别是,方式区别是,方式2 2在计数过程中输出始终为高,在计数过程中输出始

54、终为高, 直至计直至计数器减到数器减到1 1时,时, 输出一个输出一个CLKCLK负脉冲后又恢复为高;负脉冲后又恢复为高;方方式式3 3在计数过程中输出有一半时间为高,另一半时间为在计数过程中输出有一半时间为高,另一半时间为低。低。所以,若计数值为所以,若计数值为N N,则方式,则方式3 3的输出为周期是的输出为周期是N N个个CLKCLK脉冲的方波。脉冲的方波。如果计数值如果计数值N N是奇数,则输出是奇数,则输出(N+1)/2(N+1)/2个个CLKCLK脉冲周期为高,脉冲周期为高,(N-1)/2(N-1)/2个脉冲周期为低,即个脉冲周期为低,即OUTOUT为高,将比其为低多一个为高,将比

55、其为低多一个CLKCLK周期时间。周期时间。.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系62 方式方式0 0之所以称之为计数结束中断,是因为方式之所以称之为计数结束中断,是因为方式0 0是是专为专为82538253工作在中断方式而设计的,它的输出工作在中断方式而设计的,它的输出OUTOUT一经一经确定方式以后就马上变低,直到计数到确定方式以后就马上变低,直到计数到0 0才变高,而其才变高,而其他方式的输出就不是这种情况。他方式的输出就不是这种情况。82538253用于中断方式并不用于中断方式并不仅限于方式仅限于方式0 0,其他方式也是可以用于中断方式的。,

56、其他方式也是可以用于中断方式的。82538253内部没有中断控制电路,也没有专用的中断请求引内部没有中断控制电路,也没有专用的中断请求引线,所以若要用于中断,则可用线,所以若要用于中断,则可用OUTOUT信号作为外部中断信号作为外部中断请求信号。请求信号。.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系63 任一种方式,只有写入计数值后才能开始计数,任一种方式,只有写入计数值后才能开始计数,方式方式0 0、2 2、3 3和和4 4都是在写入计数值后,计数过程就开都是在写入计数值后,计数过程就开始了,而方式始了,而方式1 1和和5 5需要外部触发启动,才开始计数

57、。需要外部触发启动,才开始计数。 6 6种方式中,只有种方式中,只有方式方式2 2和和3 3是连续计数,其他是连续计数,其他4 4种种方式都是一次计数,要继续工作需要重新启动方式都是一次计数,要继续工作需要重新启动,方式,方式0 0、4 4由写入计数值由写入计数值( (软件软件) )启动,方式启动,方式1 1、5 5要由外部信要由外部信号号( (硬件硬件) )启动。启动。2.2.计数器的工作与启动计数器的工作与启动.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系64 在方式在方式0 0和方式和方式4 4中,中,GATEGATE是电平起作用。计数过是电平起作用。

58、计数过程受程受GATEGATE信号的控制,信号的控制,GATEGATE为高电平计数,低电平停为高电平计数,低电平停止计数。止计数。 在方式在方式1 1和方式和方式5 5中,中,GATEGATE是上升沿起作用。在计是上升沿起作用。在计数过程中,只要数过程中,只要GATEGATE出现由低到高的跳变,计数的初出现由低到高的跳变,计数的初值就被装入减值就被装入减1 1 计数器,并从初值起继续计数。计数器,并从初值起继续计数。 在方式在方式2 2和方式和方式3 3中,中,GATEGATE信号的上升沿和电平均信号的上升沿和电平均起作用。起作用。高电平计数,低电平停止计数。上升沿则重高电平计数,低电平停止计

59、数。上升沿则重新装入计数初值,继续计数新装入计数初值,继续计数。3.3.门控信号门控信号GATEGATE的作用的作用.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系65 8253 8253可以在计数过程中写入计数值,但它的作可以在计数过程中写入计数值,但它的作用在不同方式时有所不同。方式用在不同方式时有所不同。方式0 0和方式和方式4 4是立即有是立即有效效( (即新的计数值写入减即新的计数值写入减1 1计数器计数器) ),方式,方式1 1和方式和方式5 5是外部触发后有效,方式是外部触发后有效,方式2 2和方式和方式3 3是本次计数结束是本次计数结束后有效。

60、后有效。4.4.在计数过程中改变计数值在计数过程中改变计数值.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系6682538253的控制字如下图所示。的控制字如下图所示。.3 .382538253的控制字和初始化编程的控制字和初始化编程67 (1)(1)计数器选择计数器选择(D(D7 7、D D6 6) )。 控制字的最高两位决定这个控制字是哪一个计控制字的最高两位决定这个控制字是哪一个计数器的控制字。由于三个计数器的工作是完全独立数器的控制字。由于三个计数器的工作是完全独立的,所以每个计数器都有一个控制字。而的,所以每个计数器都有一个控制字。而三个控制三个控制

温馨提示

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

评论

0/150

提交评论