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

下载本文档

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

文档简介

1、1 微型计算机原理及应用 2 2 2 可编程并行接口可编程并行接口8255A8255A 可编程计数器可编程计数器/ /定时器定时器82538253 1 1 3 8255 8255是为是为80808080,80858085和和80888088微型机系微型机系 统设计的统设计的并行并行I/OI/O接口接口芯片。芯片。 4 82558255的内部组成如下图所示的内部组成如下图所示 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) 都是都是

2、8 8位的端口,都可以选择作为输入或输出。位的端口,都可以选择作为输入或输出。 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 C 1.1 82551.1 8255的组成与接口信号的组成与接口信号 6 l根据根据CPUCP

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

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

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

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

7、通常, 它与它与PCPC微机的微机的IOWIOW相连。相连。 4.4.读读/ /写控制逻辑写控制逻辑 1.1 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

8、 A0 0和和CSCS,RDRD,WRWR及组合所实现的各种功能及组合所实现的各种功能 如下:如下: 1.1 82551.1 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

9、 3种工作方式,由方式选择控制字来选用:种工作方式,由方式选择控制字来选用: (1) (1)方式方式0 (Mode 0)-0 (Mode 0)-基本输入输出。基本输入输出。 (2) (2)方式方式1 (Mode 1)-1 (Mode 1)-选通输入输出。选通输入输出。 (3) (3)方式方式2 (Mode 2)-2 (Mode 2)-双向传送。双向传送。 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 14 1.1.方式选择控制字方式选择控制字 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 15 2.2.按位置位按位置位/ /复位控制字复位控制字

10、1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 16 如:端口如:端口C C的的bit3bit3(PCPC3 3)的置位控制字为)的置位控制字为 00000111B(07H)00000111B(07H),复位控制字为,复位控制字为00000110B(06H)00000110B(06H)。 注意:注意: C C端口的按位置位端口的按位置位/ /复位控制字须跟在方式选择控制字复位控制字须跟在方式选择控制字 之后写入控制字寄存器。即使仅使用该功能,也应先之后写入控制字寄存器。即使仅使用该功能,也应先 选送一方式控制字。选送一方式控制字。 1.2 82551.2 8255的工作方

11、式与的工作方式与控制控制字字 17 例例1 1 将将8255 C8255 C端口的端口的8 8根根I/OI/O线接线接8 8只发光二极管的正只发光二极管的正 极极( (八个负极均接地八个负极均接地) ),用按位置位,用按位置位/ /复位控制字编写复位控制字编写 使这使这8 8只发光二极管依次亮、灭的程序。设只发光二极管依次亮、灭的程序。设82558255的端的端 口地址为口地址为380H380H383H383H。 本程序要使用本程序要使用82558255的的2 2个控制字个控制字-方式选择字和方式选择字和 按位置位按位置位/ /复位字。这复位字。这2 2个控制字都写入个控制字都写入825582

12、55的控制的控制 字寄存器,由它们的字寄存器,由它们的D D7 7位为位为1 1或或0 0来区别写入的字是来区别写入的字是 方式选择字还是置位方式选择字还是置位/ /复位字。复位字。82558255的控制字寄存器的控制字寄存器 的端口地址为的端口地址为383H383H。方式选择字只写入一次,其后。方式选择字只写入一次,其后 写入的都是置位写入的都是置位/ /复位字。复位字。 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 18 82558255与与PCPC微机的连接及微机的连接及8255 C8255 C端口与端口与8 8只发光二极管只发光二极管 的连接如图。的连接如图。

13、1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 19 程序框图程序框图 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 20 stackstack segment stack segment stack stackstack dw 32 dup (0) dw 32 dup (0) stackstack ends ends code code segment segment beginbegin proc far proc far assume ss: stack, cs: code assume ss: stack, cs: code push ds

14、 push ds sub ax, ax sub ax, ax push ax push ax 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 21 MOV DXMOV DX,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

15、 $ ;延时;延时 LOOP $LOOP $ AND AL,0FEH AND AL,0FEH ;置位字改为复位字;置位字改为复位字 OUT DX,AL OUT DX,AL ;熄灭点亮的发光二极管;熄灭点亮的发光二极管 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 ;检查键盘有无输入;检查键盘有无输入

16、INT 21H INT 21H ;无;无0 0送送ALAL,有,有-1-1送送ALAL INC AL INC AL POP AX POP AX JNZ AGAIN JNZ AGAIN ret ret begin endpbegin endp codecode ends ends end begin end begin 1.2 82551.2 8255的工作方式与的工作方式与控制控制字字 23 这是一种基本的这是一种基本的I/OI/O方式。在这种工作方式下,方式。在这种工作方式下, 3 3个端口都可由程序选定作输入或输出。它们的输出个端口都可由程序选定作输入或输出。它们的输出 是锁存的,输入是不

17、锁存的。是锁存的,输入是不锁存的。 在这种工作方式下,可以由在这种工作方式下,可以由CPUCPU用简单的输入或用简单的输入或 输出指令来进行读或写。因而当方式输出指令来进行读或写。因而当方式0 0用于无条件传用于无条件传 送方式的接口电路时是十分简单的,这时不需要状送方式的接口电路时是十分简单的,这时不需要状 态端口,态端口,3 3个端口都可作为数据端口。个端口都可作为数据端口。 1.3 1.3 三种工作方式的功能三种工作方式的功能 1. 1. 方式方式0 0 24 若将例若将例1 1改为改为C C端口方式端口方式0 0输出,则控制程序为:输出,则控制程序为: stackstack segme

18、nt stack segment stack stackstack dw 32 dup (0) dw 32 dup (0) stackstack ends ends code code segment segment beginbegin 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,A

19、L OUT DX,AL 1.3 1.3 三种工作方式的功能三种工作方式的功能 25 MOV DX,382H MOV DX,382H ;C C端口的端口地址送端口的端口地址送DXDX MOV AL,1 MOV AL,1 ;C C端口的输出值端口的输出值 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

20、送送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端口的输出值端口的输出值 JMP AGAIN JMP AGAIN BACK: retBACK: ret 1.3 1.3 三种工作方式的功能三种工作方式的功能 26 beginbegin endp endp codecode ends ends end begin end begin 方式方式0 0也可作为查询式输入或输出的接口电也可作为查询式输入或输出的接口电

21、路,此时端口路,此时端口A A和和B B分别可作为一个数据端口,而分别可作为一个数据端口,而 取端口取端口C C的某些位作为这两个数据端口的控制和状的某些位作为这两个数据端口的控制和状 态信息。态信息。 1.3 1.3 三种工作方式的功能三种工作方式的功能 27 这是一种选通的这是一种选通的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

22、位为位为B B组。端口组。端口 C C中余下的两位,仍可作为输入或输出用,由方式控中余下的两位,仍可作为输入或输出用,由方式控 制字中的制字中的D D3 3来设定。端口来设定。端口A A和和B B都可以由程序设定为输都可以由程序设定为输 入或输出。此时端口入或输出。此时端口C C的某些位为控制状态信号,用的某些位为控制状态信号,用 于联络和中断,其各位的功能是固定的,不能用程于联络和中断,其各位的功能是固定的,不能用程 序改变。序改变。 2. 2. 方式方式1 1 1.3 1.3 三种工作方式的功能三种工作方式的功能 28 l 方式方式1 1输入输入的状态控制信号及其时序关系如图。的状态控制信

23、号及其时序关系如图。 1.3 1.3 三种工作方式的功能三种工作方式的功能 29 (1) STB(1) STB(strobe) (strobe) 选通信号,低电平有效。这是选通信号,低电平有效。这是 由外设发出的输入信号,信号的前沿由外设发出的输入信号,信号的前沿( (下降沿下降沿) ),把,把 输入装置送来的数据送入输入缓冲器;信号的后沿输入装置送来的数据送入输入缓冲器;信号的后沿 ( (上升沿上升沿) )使使INTRINTR有效有效( (置置1)1)。 (2)IBF(2)IBF(input buffer full) (input buffer full) 输入缓冲器满信号输入缓冲器满信号

24、,高电平有效。这是,高电平有效。这是82558255输出给外设的联络信号。输出给外设的联络信号。 外设将数据送至输入缓冲器后,该信号有效;外设将数据送至输入缓冲器后,该信号有效;RDRD信信 号的上升沿将数据送至数据线后,该信号无效。号的上升沿将数据送至数据线后,该信号无效。 1.3 1.3 三种工作方式的功能三种工作方式的功能 30 (3)INTR(3)INTR(interrupt request) (interrupt request) 中断请求信号,高电中断请求信号,高电 平有效。这是平有效。这是82558255的一个输出信号,可用作向的一个输出信号,可用作向CPUCPU申申 请中断的请

25、求信号,以要求请中断的请求信号,以要求CPUCPU服务。当服务。当IBFIBF为高和为高和 INTE(INTE(中断允许中断允许) )为高时,由为高时,由STBSTB的上升沿的上升沿( (后沿后沿) )使其使其 置为高电平。由置为高电平。由RDRD信号的下降沿信号的下降沿(CPU(CPU读取数据前读取数据前) )清清 除为低电平。除为低电平。 (4)INTE(4)INTE(interrupt enable) (interrupt enable) 中断允许信号,端口中断允许信号,端口 A A中断允许中断允许INTEAINTEA可由用户通过对可由用户通过对PCPC4 4的按位置位的按位置位/ /复

26、复 位来控制。而位来控制。而INTEINTEB B 由由PCPC2 2 的置位的置位/ /复位控制。复位控制。INTEINTE 置位允许中断。置位允许中断。INTEINTE复位禁止中断。复位禁止中断。 1.3 1.3 三种工作方式的功能三种工作方式的功能 31 例例2 2 用选通输入方式从用选通输入方式从A A端口输入端口输入100100个个8 8位二进制位二进制 数。数。 接口及其电路如下图所示。接口及其电路如下图所示。 1.3 1.3 三种工作方式的功能三种工作方式的功能 32 stacksegment stack stack dw 32 dup (0) stackends dataseg

27、ment BUF DB 100 DUP (?) data ends code segment begin proc far assume ss: stack, cs: code, ds: data push ds sub ax, ax push ax 控制程序:控制程序: 1.3 1.3 三种工作方式的功能三种工作方式的功能 33 MOV ESMOV ES,AXAX mov ax, datamov ax, data mov ds, axmov ds, ax MOV DXMOV DX,38FH38FH MOV ALMOV AL,0B0H0B0H OUT DXOUT DX,ALAL MOV ALM

28、OV AL,9 9 ;PCPC4 4置置1 1,允许,允许A A端口中断端口中断 OUT DXOUT DX,ALAL MOV AXMOV AX,SEG IS8255 SEG IS8255 ;中断程序入口地址送中断向量表;中断程序入口地址送中断向量表 MOV ESMOV ES:01C6H01C6H,AXAX MOV AXMOV AX,OFFSET IS8255OFFSET IS8255 MOV ESMOV ES:01C4H01C4H,AXAX MOV CXMOV CX,100100 MOV BXMOV BX,0 0 MOV DXMOV DX,38CH38CH 1.3 1.3 三种工作方式的功能三

29、种工作方式的功能 34 IN ALIN AL,0A1H 0A1H ;读屏蔽字;读屏蔽字 AND AL AND AL,0FDH 0FDH ;改变屏蔽字,允许;改变屏蔽字,允许IRQ9IRQ9中断中断 OUT 0A1H OUT 0A1H,ALAL ROTTROTT: JMP $JMP $ LOOP ROTT LOOP ROTT IN AL,0A1H IN AL,0A1H ;恢复屏蔽字,禁止;恢复屏蔽字,禁止IRQ9IRQ9中断中断 OR AL,2 OR AL,2 OUT 0A1H,AL OUT 0A1H,AL ret ret IS8255: IN AL,DXIS8255: IN AL,DX MOV

30、 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 ;修改返址;修改返址 INC AX INC AX INC AX INC AX PUSH AX PUSH AX IRET IRET beginbegin endp endp codecode ends ends end b

31、egin end begin 1.3 1.3 三种工作方式的功能三种工作方式的功能 36 l 方式方式1 1输出输出的状态控制信号及其时序关系如图。的状态控制信号及其时序关系如图。 1.3 1.3 三种工作方式的功能三种工作方式的功能 37 (1) OBF(1) OBF输出缓冲器满信号输出缓冲器满信号,低电平有效。这是,低电平有效。这是82558255 输出给外设的一个联络信号。输出给外设的一个联络信号。CPUCPU把数据写入指定把数据写入指定 端口的输出锁存器后,该信号有效,表示外设可以端口的输出锁存器后,该信号有效,表示外设可以 把数据取走。它由把数据取走。它由ACKACK的前沿的前沿(

32、(下降沿下降沿) )即外设取走即外设取走 数据后,使其恢复为高。数据后,使其恢复为高。 (2)ACK(acknowledge)(2)ACK(acknowledge) 低电平有效。这是外设发出低电平有效。这是外设发出 的响应信号,该信号的前沿取走数据并使的响应信号,该信号的前沿取走数据并使OBFOBF无效无效 后沿使后沿使INTRINTR有效。有效。 1.3 1.3 三种工作方式的功能三种工作方式的功能 38 (3)INTR (3)INTR 中断请求信号中断请求信号,高电平有效。当输出装置已,高电平有效。当输出装置已 经接受了经接受了CPUCPU输出的数据后,它用来向输出的数据后,它用来向CPU

33、CPU提出中断提出中断 请求,要求请求,要求CPUCPU继续输出数据。继续输出数据。OBFOBF为为“1 1”( (高电平高电平) ) 和和INTEINTE为为“1 1”( (高电平高电平) )时,由时,由ACKACK的后沿的后沿( (上升沿上升沿) ) ,使其置位,使其置位( (高电平高电平) ),WRWR信号的前沿信号的前沿( (下降沿下降沿) )使其使其 复位复位( (低电平低电平) )。 (4)INTE(4)INTEA A 由 由PCPC6 6的置位的置位/ /复位控制。而复位控制。而INTEINTEB B由由PCPC2 2置置 位位/ /复位控制。复位控制。INTEINTE置位允许中

34、断。置位允许中断。 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端口选通输出,用单稳电路来产生选通端口选通输出,用单稳电路来产生选通 信号信号ACKACK。当需要了解。当需要了解8 8个监控量的状态时发来选通

35、个监控量的状态时发来选通 信号信号ACKACK,该信号使控制程序进入中断服务程序。,该信号使控制程序进入中断服务程序。 在中断服务程序中,从在中断服务程序中,从A A端口输入端口输入8 8个监控量的状态个监控量的状态 后立即从后立即从B B端口输出。端口输出。 1.3 1.3 三种工作方式的功能三种工作方式的功能 40 接口电路接口电路 1.3 1.3 三种工作方式的功能三种工作方式的功能 41 stackstack segment stack segment stack stackstack dw 32 dup(0) dw 32 dup(0) stack endsstack ends dat

36、adata segment segment DA1 DA1 DB DB WAIT INTERRUPTWAIT INTERRUPT , 0DH, 0AH, , 0DH, 0AH, $ $ data data ends ends code code segment segment beginbegin proc far proc far assume ss: stack, cs: code, ds: data assume ss: stack, cs: code, ds: data push ds push ds sub ax, ax sub ax, ax push ax push ax 控制程序

37、:控制程序: 1.3 1.3 三种工作方式的功能三种工作方式的功能 42 MOV ES,AXMOV ES,AX mov ax, datamov ax, data mov ds, axmov ds, ax MOV DX,393HMOV DX,393H MOV AL,94HMOV AL,94H OUT DX,ALOUT DX,AL MOV AL,5 MOV AL,5 ;PC2PC2置置1 1,允许,允许B B端口中断端口中断 OUT DX,ALOUT DX,AL MOV AX,SEG IO8255 MOV AX,SEG IO8255 ;中断程序入口地址送中断向量表;中断程序入口地址送中断向量表 M

38、OV ES:01C6H,AXMOV ES:01C6H,AX MOV AX,OFFSET IO8255MOV AX,OFFSET IO8255 MOV ES:01C4H,AXMOV ES:01C4H,AX IN AL,0A1H IN AL,0A1H ;读屏蔽字;读屏蔽字 AND AL,0FDH AND AL,0FDH ;改变屏蔽字,允许;改变屏蔽字,允许IRQ9IRQ9中断中断 OUT DX,ALOUT DX,AL 1.3 1.3 三种工作方式的功能三种工作方式的功能 43 ROTT: MOC DX,OFFSET DA1ROTT: MOC DX,OFFSET DA1 MOV AH,9 MOV A

39、H,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 ret 1.3 1.3 三种工作方式的功能三种工作方式的功能 44 IO8255: MOV DX,390HIO8255: MOV DX,390H IN AL,DX IN AL,DX INC DX INC

40、 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 IRET beginbegin endp endp codecode ends ends end begin end begin 1.3 1.3 三种工作方式的功能三种工作方式的功能 4

41、5 这种工作方式,使外设可在单一的这种工作方式,使外设可在单一的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.3 三种工作方式的功能三种工作方式的

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

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

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

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

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

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

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

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

50、锁存控制计数器变化,仅当写入锁存控制 字时,它锁存减字时,它锁存减1 1计数器的当前计数值计数器的当前计数值( (减减1 1计数器可计数器可 继续计数继续计数) ),CPUCPU读取后,它自动解除锁存状态,又读取后,它自动解除锁存状态,又 跟随减跟随减1 1计数器变化。所以在计数过程中,计数器变化。所以在计数过程中,CPUCPU随时随时 可以用指令读取任一计数器的当前计数值,这一操可以用指令读取任一计数器的当前计数值,这一操 作对计数没有影响。计数初值寄存器,减作对计数没有影响。计数初值寄存器,减1 1计数器和计数器和 输出寄存器都可看作是输出寄存器都可看作是8 8位的寄存器对。位的寄存器对。

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

52、 .1 .1 82538253的组成与接口信号的组成与接口信号 58 82538253的计数器有的计数器有6 6种工作方式:种工作方式: (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计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 59 1.1.计数器的输出计数器的输出 O

53、UTOUT 6 6种工作方式的输出信号如下图所示。种工作方式的输出信号如下图所示。 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 60 6 6种工作方式中,只有方式种工作方式中,只有方式0 0在写入控制字后输出在写入控制字后输出 为低,其他为低,其他5 5种方式,都是在写入控制字后输出为高。种方式,都是在写入控制字后输出为高。 方式方式2 2、4 4、5 5的输出波形是相同的,都是宽度为一的输出波形是相同的,都是宽度为一 个个CLKCLK周期的负脉冲。但方式周期的负脉冲。但方式2 2是连续工作,方式是连续工作,方式4 4由软由软 件件( (设置计数值设置计

54、数值) )触发启动,而方式触发启动,而方式5 5由门控脉冲触发启由门控脉冲触发启 动。动。 方式方式5 5与方式与方式1 1的工作方式基本相同,但输出波形的工作方式基本相同,但输出波形 不同,方式不同,方式1 1的输出为宽度是的输出为宽度是N N个个CLKCLK脉冲的低电平脉冲脉冲的低电平脉冲 ( (计数过程中输出为低计数过程中输出为低) ),而方式,而方式5 5的输出为宽度是的输出为宽度是1 1个个 CLKCLK脉冲的负脉冲脉冲的负脉冲( (计数过程中输出为高计数过程中输出为高) )。 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 61 方式方式3 3和

55、方式和方式2 2的输出都是周期性的,它们的主要的输出都是周期性的,它们的主要 区别是,方式区别是,方式2 2在计数过程中输出始终为高,在计数过程中输出始终为高, 直至计直至计 数器减到数器减到1 1时,时, 输出一个输出一个CLKCLK负脉冲后又恢复为高;负脉冲后又恢复为高;方方 式式3 3在计数过程中输出有一半时间为高,另一半时间为在计数过程中输出有一半时间为高,另一半时间为 低。低。所以,若计数值为所以,若计数值为N N,则方式,则方式3 3的输出为周期是的输出为周期是N N个个 CLKCLK脉冲的方波。脉冲的方波。如果计数值如果计数值N N是奇数,则输出是奇数,则输出(N+1)/2(N+

56、1)/2 个个CLKCLK脉冲周期为高,脉冲周期为高,(N-1)/2(N-1)/2个脉冲周期为低,即个脉冲周期为低,即OUTOUT 为高,将比其为低多一个为高,将比其为低多一个CLKCLK周期时间。周期时间。 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 62 方式方式0 0之所以称之为计数结束中断,是因为方式之所以称之为计数结束中断,是因为方式0 0是是 专为专为82538253工作在中断方式而设计的,它的输出工作在中断方式而设计的,它的输出OUTOUT一经一经 确定方式以后就马上变低,直到计数到确定方式以后就马上变低,直到计数到0 0才变高,而其才变高

57、,而其 他方式的输出就不是这种情况。他方式的输出就不是这种情况。82538253用于中断方式并不用于中断方式并不 仅限于方式仅限于方式0 0,其他方式也是可以用于中断方式的。,其他方式也是可以用于中断方式的。 82538253内部没有中断控制电路,也没有专用的中断请求引内部没有中断控制电路,也没有专用的中断请求引 线,所以若要用于中断,则可用线,所以若要用于中断,则可用OUTOUT信号作为外部中断信号作为外部中断 请求信号。请求信号。 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 63 任一种方式,只有写入计数值后才能开始计数,任一种方式,只有写入计数值后

58、才能开始计数, 方式方式0 0、2 2、3 3和和4 4都是在写入计数值后,计数过程就开都是在写入计数值后,计数过程就开 始了,而方式始了,而方式1 1和和5 5需要外部触发启动,才开始计数。需要外部触发启动,才开始计数。 6 6种方式中,只有种方式中,只有方式方式2 2和和3 3是连续计数,其他是连续计数,其他4 4种种 方式都是一次计数,要继续工作需要重新启动方式都是一次计数,要继续工作需要重新启动,方式,方式 0 0、4 4由写入计数值由写入计数值( (软件软件) )启动,方式启动,方式1 1、5 5要由外部信要由外部信 号号( (硬件硬件) )启动。启动。 2.2.计数器的工作与启动计

59、数器的工作与启动 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 64 在方式在方式0 0和方式和方式4 4中,中,GATEGATE是电平起作用。计数过是电平起作用。计数过 程受程受GATEGATE信号的控制,信号的控制,GATEGATE为高电平计数,低电平停为高电平计数,低电平停 止计数。止计数。 在方式在方式1 1和方式和方式5 5中,中,GATEGATE是上升沿起作用。在计是上升沿起作用。在计 数过程中,只要数过程中,只要GATEGATE出现由低到高的跳变,计数的初出现由低到高的跳变,计数的初 值就被装入减值就被装入减1 1 计数器,并从初值起继续计数

60、。计数器,并从初值起继续计数。 在方式在方式2 2和方式和方式3 3中,中,GATEGATE信号的上升沿和电平均信号的上升沿和电平均 起作用。起作用。高电平计数,低电平停止计数。上升沿则重高电平计数,低电平停止计数。上升沿则重 新装入计数初值,继续计数新装入计数初值,继续计数。 3.3.门控信号门控信号GATEGATE的作用的作用 .2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 65 8253 8253可以在计数过程中写入计数值,但它的作可以在计数过程中写入计数值,但它的作 用在不同方式时有所不同。方式用在不同方式时有所不同。方式0 0和方式和方式4 4是立

温馨提示

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

评论

0/150

提交评论