




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理、汇编与接口技术朱定华朱定华8.28.28.38.3可编程并行接口可编程并行接口8255A8255A可编程计数器可编程计数器/ /定时器定时器82538253串行通信与异步通信控制器串行通信与异步通信控制器82508250的应用的应用8.18.18.1 8.1 可编程并行接口可编程并行接口8255A8255A 8255 8255是为是为80808080,80858085和和80888088微型机系统设计微型机系统设计 的的并行并行I/OI/O接口接口芯片。芯片。82558255的内部组成如图所示的内部组成如图所示8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号
2、l端口端口A(Port A)A(Port A)、端口、端口B(Port B)B(Port B)和端口和端口C(Port C)C(Port C)都是都是8 8位的端口,都可以选择作为输入或输出。位的端口,都可以选择作为输入或输出。l可以将端口可以将端口C C的高的高4 4位和低位和低4 4位分开使用,分别作为位分开使用,分别作为输入和输出。输入和输出。l端口端口A A和端口和端口B B作为选通输入或输出的数据端口时,作为选通输入或输出的数据端口时,端口端口C C的指定位与端口的指定位与端口A A和端口和端口B B配合使用,用作控配合使用,用作控制信号或状态信号。制信号或状态信号。1. 1. 端口
3、端口A A、端口、端口B B和端口和端口C C8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号l根据根据CPUCPU的方式命令字控制的方式命令字控制82558255的工作方式。的工作方式。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组控制电路组控制
4、电路8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号 这是一个三态双向的这是一个三态双向的8 8位缓冲器,它是位缓冲器,它是82558255与与系统数据总线的接口。输入输出的数据以及系统数据总线的接口。输入输出的数据以及CPUCPU发发出的命令控制字和外设的状态信息,都是通过这出的命令控制字和外设的状态信息,都是通过这个缓冲器传送的。个缓冲器传送的。3. 3. 数据总线缓冲器数据总线缓冲器8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号l控制把控制把CPUCPU的控制命令或输出数据送至相应的端口的控制命令或输出数据送至相应的端口, , l控制把外
5、设的状态信息或输入数据通过相应的端口控制把外设的状态信息或输入数据通过相应的端口送至送至CPUCPU。4.4.读读/ /写控制逻辑写控制逻辑8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号 (1)A1 (1)A1、A0 A0 端口选择:用来选择端口选择:用来选择A A、B B、C 3C 3个端个端口和控制字寄存器。通常,它们与口和控制字寄存器。通常,它们与PCPC微机的地址线微机的地址线A1A1和和A0A0相连。相连。 (2)CS (2)CS选片信号:低电平有效,由它启动选片信号:低电平有效,由它启动CPUCPU与与82558255之间的通信。通常,它与之间的通信。通常
6、,它与PCPC微机地址线的译码微机地址线的译码电路的输出线相连,并由该译码电路的输出线来确电路的输出线相连,并由该译码电路的输出线来确定定82558255的端口地址。的端口地址。4.4.读读/ /写控制逻辑写控制逻辑8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号 (3)RD (3)RD读信号:低电平有效,它控制读信号:低电平有效,它控制82558255送出数送出数据或状态信息至系统数据总线。通常,它与据或状态信息至系统数据总线。通常,它与PCPC微机微机的的IORIOR相连。相连。 (4)WR(4)WR写信号:低电平有效,它控制把写信号:低电平有效,它控制把CPUCP
7、U输出输出到系统数据总线上的数据或命令写到到系统数据总线上的数据或命令写到82558255。通常,。通常,它与它与PCPC微机的微机的IOWIOW相连。相连。4.4.读读/ /写控制逻辑写控制逻辑8.1.1 82558.1.1 8255的组成与接口信号的组成与接口信号 (5)RESET (5)RESET 复位信号:高电平有效,它清除控制寄复位信号:高电平有效,它清除控制寄存器,并置存器,并置A A、B B、C 3C 3个端口为输入方式。个端口为输入方式。 实验中常用的复位信号产生电路如图所示。实验中常用的复位信号产生电路如图所示。4.4.读读/ /写控制逻辑写控制逻辑8.1.1 82558.1
8、.1 8255的组成与接口信号的组成与接口信号 A A1 1,A A0 0和和CSCS,RDRD,WRWR及组合所实现的各种功能及组合所实现的各种功能如下:如下:8.1.1 82558.1.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 0
9、0 01 11 11 1无操作无操作 82558255有有3 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)-双向传送。双向传送。8.1.2 82558.1.2 8255的工作方式与的工作方式与控制控制字字1.1.方式选择控制字方式选择控制字8.1.2 82558.1.2 8255的工作方式与的工作方式与控制控制
10、字字2.2.按位置位按位置位/ /复位控制字复位控制字 8.1.2 82558.1.2 8255的工作方式与的工作方式与控制控制字字 如:端口如:端口C C的的bit3bit3(PCPC3 3)置位的控制字为)置位的控制字为00000111B(07H)00000111B(07H),它复位的控制字为,它复位的控制字为00000110B(06H)00000110B(06H)。 注意:注意: C C端口的按位置位端口的按位置位/ /复位控制字须跟在方式选择控制复位控制字须跟在方式选择控制字之后写入控制字寄存器。即使仅使用该功能,也字之后写入控制字寄存器。即使仅使用该功能,也应先选送一方式控制字。应先
11、选送一方式控制字。8.1.2 82558.1.2 8255的工作方式与的工作方式与控制控制字字 例例8.18.1 将将8255 C8255 C端口的端口的8 8根根I/OI/O线接线接8 8只发光二极管的只发光二极管的正极正极( (八个负极均接地八个负极均接地) ),用按位置位,用按位置位/ /复位控制字编复位控制字编写使这写使这8 8只发光二极管依次亮、灭的程序。设只发光二极管依次亮、灭的程序。设82558255的的端口地址为端口地址为380H380H383H383H。 本程序要使用本程序要使用82558255的的2 2个控制字个控制字-方式选择字和方式选择字和按位置位按位置位/ /复位字。
12、这复位字。这2 2个控制字都写入个控制字都写入82558255的控制的控制字寄存器,由它们的字寄存器,由它们的D D7 7位为位为1 1或或0 0来区别写入的字是来区别写入的字是方式选择字还是置位方式选择字还是置位/ /复位字。复位字。82558255的控制字寄存器的控制字寄存器的端口地址为的端口地址为383H383H。方式选择字只写入一次,其后。方式选择字只写入一次,其后写入的都是置位写入的都是置位/ /复位字。复位字。8.1.2 82558.1.2 8255的工作方式与的工作方式与控制控制字字82558255与与PCPC微机的连接及微机的连接及8255 C8255 C端口与端口与8 8只发
13、光二极管只发光二极管的连接如图。的连接如图。程序框图程序框图stackstack 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 ax MOV DXMOV D
14、X,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 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 retbegin endpbegin endpcodecode ends en
16、ds end begin end begin 这是一种基本的这是一种基本的I/OI/O方式。在这种工作方式下,方式。在这种工作方式下,3 3个端口都可由程序选定作输入或输出。它们的输出个端口都可由程序选定作输入或输出。它们的输出是锁存的,输入是不锁存的。是锁存的,输入是不锁存的。 在这种工作方式下,可以由在这种工作方式下,可以由CPUCPU用简单的输入或用简单的输入或输出指令来进行读或写。因而当方式输出指令来进行读或写。因而当方式0 0用于无条件传用于无条件传送方式的接口电路时是十分简单的,这时不需要状送方式的接口电路时是十分简单的,这时不需要状态端口,态端口,3 3个端口都可作为数据端口。个
17、端口都可作为数据端口。8.1.3 8.1.3 3 3种工作方式的功能种工作方式的功能1. 1. 方式方式0 0若将例若将例8.18.1改为改为C C端口方式端口方式0 0输出,则控制程序为:输出,则控制程序为:stackstack 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,
18、 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,AL 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
19、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端口的输出值端口的输出值 JMP AGAIN JMP AGAINBACK: retBACK: retbeginbegin endp endpcodecode ends ends end be
20、gin end begin 方式方式0 0也可作为查询式输入或输出的接口电路,也可作为查询式输入或输出的接口电路,此时端口此时端口A A和和B B分别可作为一个数据端口,而取端分别可作为一个数据端口,而取端口口C C的某些位作为这两个数据端口的控制和状态信的某些位作为这两个数据端口的控制和状态信息。息。 这是一种选通的这是一种选通的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的
21、的PCPC2 2PCPC0 0 3 3位为位为B B组。端口组。端口C C中余下的两位,仍可作为输入或输出用,由方式控中余下的两位,仍可作为输入或输出用,由方式控制字中的制字中的D D3 3来设定。端口来设定。端口A A和和B B都可以由程序设定为输都可以由程序设定为输入或输出。此时端口入或输出。此时端口C C的某些位为控制状态信号,用的某些位为控制状态信号,用于联络和中断,其各位的功能是固定的,不能用程于联络和中断,其各位的功能是固定的,不能用程序改变。序改变。2. 2. 方式方式1 1l 方式方式1 1输入输入的状态控制信号及其时序关系如图。的状态控制信号及其时序关系如图。 (1) STB
22、(1) STB(strobe) (strobe) 选通信号,低电平有效。这是选通信号,低电平有效。这是由外设发出的输入信号,信号的前沿由外设发出的输入信号,信号的前沿( (下降沿下降沿) ),把,把输入装置送来的数据送入输入缓冲器;信号的后沿输入装置送来的数据送入输入缓冲器;信号的后沿( (上升沿上升沿) )使使INTRINTR有效有效( (置置1)1)。 (2)IBF(2)IBF(input buffer full) (input buffer full) 输入缓冲器满信号,输入缓冲器满信号,高电平有效。这是高电平有效。这是82558255输出给外设的联络信号。外输出给外设的联络信号。外设将
23、数据送至输入缓冲器后,该信号有效;设将数据送至输入缓冲器后,该信号有效;RDRD信号信号的上升沿将数据送至数据线后,该信号无效。的上升沿将数据送至数据线后,该信号无效。 (3)INTR(3)INTR(interrupt request) (interrupt request) 中断请求信号,高电中断请求信号,高电平有效。这是平有效。这是82558255的一个输出信号,可用作向的一个输出信号,可用作向CPUCPU申申请中断的请求信号,以要求请中断的请求信号,以要求CPUCPU服务。当服务。当IBFIBF为高和为高和INTE(INTE(中断允许中断允许) )为高时,由为高时,由STBSTB的上升沿
24、的上升沿( (后沿后沿) )使其使其置为高电平。由置为高电平。由RDRD信号的下降沿信号的下降沿(CPU(CPU读取数据前读取数据前) )清清除为低电平。除为低电平。 (4)INTE(4)INTE(interrupt enable) (interrupt enable) 中断允许信号,端口中断允许信号,端口A A中断允许中断允许INTEAINTEA可由用户通过对可由用户通过对PCPC4 4的按位置位的按位置位/ /复复位来控制。而位来控制。而INTEINTEB B 由由PCPC2 2 的置位的置位/ /复位控制。复位控制。INTEINTE置位允许中断。置位允许中断。INTEINTE复位禁止中断
25、。复位禁止中断。例例8.28.2 用选通输入方式从用选通输入方式从A A端口输入端口输入100100个个8 8位二进位二进制数。制数。stack segment stack stack dw 32 dup (0)stack endsdatasegmentBUF DB 100 DUP (?)data endscode segmentbegin proc farassume ss: stack, cs: code, ds: datapush dssub ax, axpush ax控制程序:控制程序:MOV ESMOV ES,AXAXmov ax, datamov ax, datamov ds, a
26、xmov 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 IS8255MOV ESMOV ES:01C4H01C4H,AXAXMOV CX
27、MOV CX,100100MOV BXMOV BX,0 0MOV DXMOV DX,38CH38CH 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 ;恢复屏蔽字,禁止;恢复屏蔽字,禁止IRQ9IRQ9中断中断 OR AL,2 OR AL,2 OUT 0A1H,AL OUT 0A1H,AL ret re
28、tIS8255: IN AL,DXIS8255: IN AL,DX MOV BUFBX,AL MOV BUFBX,AL INC BX INC BX 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
29、end begin end beginl 方式方式1 1输出输出的状态控制信号及其时序关系如图。的状态控制信号及其时序关系如图。 (1) OBF(1) OBF输出缓冲器满信号输出缓冲器满信号,低电平有效。这是,低电平有效。这是82558255输出给外设的一个联络信号。输出给外设的一个联络信号。CPUCPU把数据写入指定把数据写入指定端口的输出锁存器后,该信号有效,表示外设可以端口的输出锁存器后,该信号有效,表示外设可以把数据取走。它由把数据取走。它由ACKACK的前沿的前沿( (下降沿下降沿) )即外设取走即外设取走数据后,使其恢复为高。数据后,使其恢复为高。 (2)ACK(acknowled
30、ge)(2)ACK(acknowledge) 低电平有效。这是外设发出低电平有效。这是外设发出的响应信号,该信号的前沿取走数据并使的响应信号,该信号的前沿取走数据并使OBFOBF无效无效后沿使后沿使INTRINTR有效。有效。(3)INTR (3)INTR 中断请求信号中断请求信号,高电平有效。当输出装置已,高电平有效。当输出装置已经接受了经接受了CPUCPU输出的数据后,它用来向输出的数据后,它用来向CPUCPU提出中断提出中断请求,要求请求,要求CPUCPU继续输出数据。继续输出数据。OBFOBF为为“1 1”( (高电平高电平) )和和INTEINTE为为“1 1”( (高电平高电平)
31、)时,由时,由ACKACK的后沿的后沿( (上升沿上升沿) ),使其置位使其置位( (高电平高电平) ),WRWR信号的前沿信号的前沿( (下降沿下降沿) )使其复使其复位位( (低电平低电平) )。(4)INTE(4)INTEA A由由PCPC6 6的置位的置位/ /复位控制。而复位控制。而INTEINTEB B由由PCPC2 2置置位位/ /复位控制。复位控制。INTEINTE置位允许中断。置位允许中断。例例8.38.3 用用8 8只发光二极管及时反映只发光二极管及时反映8 8个监控量的状个监控量的状态,设计接口电路和控制程序。态,设计接口电路和控制程序。 用用8 8个开关模拟个开关模拟8
32、 8个监控量的状态。个监控量的状态。A A端口输入端口输入8 8个个监控量的状态,监控量的状态,B B端口接端口接8 8只发光二极管。只发光二极管。A A端口基端口基本输入,本输入,B B端口选通输出,用单稳电路来产生选通端口选通输出,用单稳电路来产生选通信号信号ACKACK。当需要了解。当需要了解8 8个监控量的状态时发来选通个监控量的状态时发来选通信号信号ACKACK,该信号使控制程序进入中断服务程序。,该信号使控制程序进入中断服务程序。在中断服务程序中,从在中断服务程序中,从A A端口输入端口输入8 8个监控量的状态个监控量的状态后立即从后立即从B B端口输出。端口输出。接口电路接口电路
33、stackstack segment stack segment stack stackstack 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
34、assume ss: stack, cs: code, ds: data push ds push ds sub ax, ax sub ax, ax push ax push ax控制程序:控制程序:MOV 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 IO
35、8255 MOV AX,SEG 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,ALROTT: MOC DX,OFFSET DA1ROTT: MOC DX,OFFSET
36、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 retIO8255: MOV DX,390HIO8255: MOV DX,390H IN AL,DX IN AL,DX INC DX INC DX OUT DX,AL
37、 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 begin 这种工作方式,使外设可在单一的这种工作方式,使外设可在单一的8 8位数位数据总线上,既
38、能发送,又能接收数据据总线上,既能发送,又能接收数据( (双向总线双向总线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控制状态信号线用。控制状态信号线用。. . 方式方式方式方式2 2状态控制信号:状态控制信号:INTEINTE1 1是输出的中断允许信号,由是输出的中断允许信号,由PCPC6 6的置位的置位/ /复位控制
39、复位控制INTEINTE2 2是输入的中断允许信号,由是输入的中断允许信号,由PCPC4 4的置位的置位/ /复位控制复位控制其他信号的作用及意义与方式其他信号的作用及意义与方式1 1相同。相同。8.28.28.38.3可编程并行接口可编程并行接口8255A8255A可编程计数器可编程计数器/ /定时器定时器82538253串行通信与异步通信控制器串行通信与异步通信控制器82508250的应用的应用8.18.18. 8.可编程计数器可编程计数器/ /定时器定时器82538253 IntelIntel系列的计数器系列的计数器/ /定时器电路为可编程序间定时器电路为可编程序间隔定时器隔定时器PIT
40、(programmable interval timer)PIT(programmable interval timer),型,型号为号为82538253,改进型为,改进型为82548254。82538253具有具有3 3个独立的功能个独立的功能完全相同的完全相同的1616位计数器,每个计数器都有位计数器,每个计数器都有6 6种工作方种工作方式,这式,这6 6种工作方式都可以由其控制字设定,因而能种工作方式都可以由其控制字设定,因而能以以6 6种不同的工作方式满足不同的接口要求。种不同的工作方式满足不同的接口要求。CPUCPU还还可以随时更改它们的方式和计数值,并读取它们的计可以随时更改它们的
41、方式和计数值,并读取它们的计数状态。数状态。82538253的内部结构:的内部结构:8. 8.1 .1 82538253的组成与接口信号的组成与接口信号 数据总线缓冲器是三态、双向、数据总线缓冲器是三态、双向、8 8位的缓冲器,用作位的缓冲器,用作系统总线和系统总线和82538253的接口,根据的接口,根据CPUCPU的输入或输出指令实的输入或输出指令实现数据传送。数据总线缓冲器具有下面现数据传送。数据总线缓冲器具有下面3 3个基本功能。个基本功能。 (1) CPU (1) CPU向向82538253所写的控制字经数据总线缓冲器和所写的控制字经数据总线缓冲器和82538253的内部数据总线传送
42、给控制字寄存器寄存。的内部数据总线传送给控制字寄存器寄存。 (2) CPU (2) CPU向某计数器所写的计数初值经它和内部总线送向某计数器所写的计数初值经它和内部总线送到指定的计数器。到指定的计数器。 (3) CPU (3) CPU读取某个计数器的现行值时,该现行值经内部读取某个计数器的现行值时,该现行值经内部总线和缓冲器传送到系统的数据总线上,被总线和缓冲器传送到系统的数据总线上,被CPUCPU读入。读入。1. 1. 数据总线缓冲器数据总线缓冲器8. 8.1 .1 82538253的组成与接口信号的组成与接口信号 读读/ /写逻辑接收系统总线的写逻辑接收系统总线的5 5个输入信号,根据个输
43、入信号,根据这这5 5个信号产生整个器件操作的控制信号。通过片个信号产生整个器件操作的控制信号。通过片选信号选信号CSCS来控制读来控制读/ /写逻辑的工作,在没有被系统写逻辑的工作,在没有被系统逻辑选中时,读逻辑选中时,读/ /写逻辑操作功能不会发生变化。写逻辑操作功能不会发生变化。根据根据A A1 1A A0 0的输入选择的输入选择3 3个计数器和控制字寄存器。个计数器和控制字寄存器。通过通过RDRD或或WRWR完成指定的读或写操作。完成指定的读或写操作。2. 2. 读读/ /写逻辑写逻辑8. 8.1 .1 82538253的组成与接口信号的组成与接口信号 CSCS、RDRD、WRWR、A
44、1A1和和A0A0组合起来所产生的选择与操组合起来所产生的选择与操作功能:作功能:8. 8.1 .1 82538253的组成与接口信号的组成与接口信号 控制字寄存器寄存数据缓冲器传送来的控制字。控制字寄存器寄存数据缓冲器传送来的控制字。控制字寄存器有控制字寄存器有3 3个,都是个,都是8 8位的寄存器,分别对应位的寄存器,分别对应于于3 3个计数器。写入的控制字由该控制字的最高个计数器。写入的控制字由该控制字的最高2 2位位确定送入哪个计数器的控制字寄存器寄存。各自的确定送入哪个计数器的控制字寄存器寄存。各自的控制字寄存器决定各自计数器的工作方式和所执行控制字寄存器决定各自计数器的工作方式和所
45、执行的操作。控制字寄存器只能写入,其值不能读出。的操作。控制字寄存器只能写入,其值不能读出。3. 3. 控制字寄存器控制字寄存器8. 8.1 .1 82538253的组成与接口信号的组成与接口信号计数器计数器0 0、计数器、计数器1 1和计数器和计数器2 2是是3 3个独立的计数器,它个独立的计数器,它们的内部结构相同。们的内部结构相同。4.4.计数器计数器0 0、计数器、计数器1 1和计数器和计数器2 28. 8.1 .1 82538253的组成与接口信号的组成与接口信号 写入计数器的初始值保存在计数初值寄存器中,写入计数器的初始值保存在计数初值寄存器中,由由CLKCLK脉冲的一个上升沿和一
46、个下降沿将其装入减脉冲的一个上升沿和一个下降沿将其装入减1 1计数器。减计数器。减1 1计数器在计数器在CLKCLK脉冲脉冲(GATE(GATE允许允许) )作用下进作用下进行递减计数,直至计数值为行递减计数,直至计数值为0 0,输出,输出OUTOUT信号。输出信号。输出寄存器的值跟随减寄存器的值跟随减1 1计数器变化,仅当写入锁存控制计数器变化,仅当写入锁存控制字时,它锁存减字时,它锁存减1 1计数器的当前计数值计数器的当前计数值( (减减1 1计数器可计数器可继续计数继续计数) ),CPUCPU读取后,它自动解除锁存状态,又读取后,它自动解除锁存状态,又跟随减跟随减1 1计数器变化。所以在
47、计数过程中,计数器变化。所以在计数过程中,CPUCPU随时随时可以用指令读取任一计数器的当前计数值,这一操可以用指令读取任一计数器的当前计数值,这一操作对计数没有影响。计数初值寄存器,减作对计数没有影响。计数初值寄存器,减1 1计数器和计数器和输出寄存器都可看作是输出寄存器都可看作是8 8位的寄存器对。位的寄存器对。8. 8.1 .1 82538253的组成与接口信号的组成与接口信号 每个计数器都是对输入的每个计数器都是对输入的CLKCLK脉冲按二进制或十进脉冲按二进制或十进制的预置值开始递减计数。若输入的制的预置值开始递减计数。若输入的CLKCLK是频率精是频率精确的时钟脉冲,则计数器可作为
48、定时器。在计数过确的时钟脉冲,则计数器可作为定时器。在计数过程中,计数器受门控信号程中,计数器受门控信号GATEGATE的控制。计数器的输的控制。计数器的输入入CLKCLK与输出与输出OUTOUT以及门控信号以及门控信号GATEGATE之间的关系,取之间的关系,取决于计数器的工作方式。决于计数器的工作方式。8. 8.1 .1 82538253的组成与接口信号的组成与接口信号82538253的计数器有的计数器有6 6种工作方式:种工作方式: (1) (1)方式方式0-0-计数结束中断计数结束中断 (2) (2)方式方式1-1-硬件触发单拍脉冲硬件触发单拍脉冲 (3) (3)方式方式2-2-频率发
49、生器频率发生器 (4) (4)方式方式3-3-方波发生器方波发生器 (5) (5)方式方式4-4-软件触发选通软件触发选通 (6) (6)方式方式5-5-硬件触发选通硬件触发选通8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系1.1.计数器的输出计数器的输出 OUTOUT6 6种工作方式的输出信号种工作方式的输出信号8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 6 6种工作方式中,只有方式种工作方式中,只有方式0 0在写入控制字后输出在写入控制字后输出为低,其他为低,其他5 5种方式,都是在写入控制字后输出
50、为高。种方式,都是在写入控制字后输出为高。 方式方式2 2、4 4、5 5的输出波形是相同的,都是宽度为一的输出波形是相同的,都是宽度为一个个CLKCLK周期的负脉冲。但方式周期的负脉冲。但方式2 2是连续工作,方式是连续工作,方式4 4由软由软件件( (设置计数值设置计数值) )触发启动,而方式触发启动,而方式5 5由门控脉冲触发启由门控脉冲触发启动。动。 方式方式5 5与方式与方式1 1的工作方式基本相同,但输出波形的工作方式基本相同,但输出波形不同,方式不同,方式1 1的输出为宽度是的输出为宽度是N N个个CLKCLK脉冲的低电平脉冲脉冲的低电平脉冲( (计数过程中输出为低计数过程中输出
51、为低) ),而方式,而方式5 5的输出为宽度是的输出为宽度是1 1个个CLKCLK脉冲的负脉冲脉冲的负脉冲( (计数过程中输出为高计数过程中输出为高) )。8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 方式方式3 3和方式和方式2 2的输出都是周期性的,它们的主要的输出都是周期性的,它们的主要区别是,方式区别是,方式2 2在计数过程中输出始终为高,在计数过程中输出始终为高, 直至计直至计数器减到数器减到1 1时,时, 输出一个输出一个CLKCLK负脉冲后又恢复为高;方负脉冲后又恢复为高;方式式3 3在计数过程中输出有一半时间为高,另一半时间为在计数
52、过程中输出有一半时间为高,另一半时间为低。所以,若计数值为低。所以,若计数值为N N,则方式,则方式3 3的输出为周期是的输出为周期是N N个个CLKCLK脉冲的方波。如果计数值脉冲的方波。如果计数值N N是奇数,则输出是奇数,则输出(N+1)/2(N+1)/2个个CLKCLK脉冲周期为高,脉冲周期为高,(N-1)/2(N-1)/2个脉冲周期为低,即个脉冲周期为低,即OUTOUT为高,将比其为低多一个为高,将比其为低多一个CLKCLK周期时间。周期时间。8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 方式方式0 0之所以称之为计数结束中断,是因为方式
53、之所以称之为计数结束中断,是因为方式0 0是是专为专为82538253工作在中断方式而设计的,它的输出工作在中断方式而设计的,它的输出OUTOUT一经一经确定方式以后就马上变低,直到计数到确定方式以后就马上变低,直到计数到0 0才变高,而其才变高,而其他方式的输出就不是这种情况。他方式的输出就不是这种情况。82538253用于中断方式并不用于中断方式并不仅限于方式仅限于方式0 0,其他方式也是可以用于中断方式的。,其他方式也是可以用于中断方式的。82538253内部没有中断控制电路,也没有专用的中断请求引内部没有中断控制电路,也没有专用的中断请求引线,所以若要用于中断,则可用线,所以若要用于中
54、断,则可用OUTOUT信号作为外部中断信号作为外部中断请求信号。请求信号。8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 任一种方式,只有写入计数值后才能开始计数,任一种方式,只有写入计数值后才能开始计数,方式方式0 0、2 2、3 3和和4 4都是在写入计数值后,计数过程就开都是在写入计数值后,计数过程就开始了,而方式始了,而方式1 1和和5 5需要外部触发启动,才开始计数。需要外部触发启动,才开始计数。 6 6种方式中,只有方式种方式中,只有方式2 2和和3 3是连续计数,其他是连续计数,其他4 4种种方式都是一次计数,要继续工作需要重新启动,方
55、式方式都是一次计数,要继续工作需要重新启动,方式0 0、4 4由写入计数值由写入计数值( (软件软件) )启动,方式启动,方式1 1、5 5要由外部信要由外部信号号( (硬件硬件) )启动。启动。2.2.计数器的工作与启动计数器的工作与启动8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系 在方式在方式0 0和方式和方式4 4中,中,GATEGATE是电平起作用。计是电平起作用。计数过程受数过程受GATEGATE信号的控制,信号的控制,GATEGATE为高电平计数,低电为高电平计数,低电平停止计数。平停止计数。 在方式在方式1 1和方式和方式5 5中,中
56、,GATEGATE是上升沿起作用。在计是上升沿起作用。在计数过程中,只要数过程中,只要GATEGATE出现由低到高的跳变,计数的初出现由低到高的跳变,计数的初值就被装入减值就被装入减1 1 计数器,并从初值起继续计数。计数器,并从初值起继续计数。 在方式在方式2 2和方式和方式3 3中,中,GATEGATE信号的上升沿和电平均信号的上升沿和电平均起作用。高电平计数,低电平停止计数。上升沿则重起作用。高电平计数,低电平停止计数。上升沿则重新装入计数初值,继续计数新装入计数初值,继续计数。3.3.门控信号门控信号GATEGATE的作用的作用8. 8.2 .2计数器的工作方式及其与输入输出的关系计数
57、器的工作方式及其与输入输出的关系 8253 8253可以在计数过程中写入计数值,但它的作可以在计数过程中写入计数值,但它的作用在不同方式时有所不同。方式用在不同方式时有所不同。方式0 0和方式和方式4 4是立即有是立即有效效( (即新的计数值写入减即新的计数值写入减1 1计数器计数器) ),方式,方式1 1和方式和方式5 5是外部触发后有效,方式是外部触发后有效,方式2 2和方式和方式3 3是本次计数结束是本次计数结束后有效。后有效。4.4.在计数过程中改变计数值在计数过程中改变计数值8. 8.2 .2计数器的工作方式及其与输入输出的关系计数器的工作方式及其与输入输出的关系82538253的控
58、制字的控制字8. 8.3 .382538253的控制字和初始化编程的控制字和初始化编程 (1)(1)计数器选择计数器选择(D(D7 7、D D6 6) )。 控制字的最高两位决定这个控制字是哪一个计控制字的最高两位决定这个控制字是哪一个计数器的控制字。由于三个计数器的工作是完全独立数器的控制字。由于三个计数器的工作是完全独立的,所以每个计数器都有一个控制字。而三个控制的,所以每个计数器都有一个控制字。而三个控制字都由同一地址字都由同一地址( (控制字寄存器地址控制字寄存器地址) )写入,因而由写入,因而由控制字的控制字的D D7 7、D D6 6两位来指定该控制字是哪个计数器的两位来指定该控制
59、字是哪个计数器的控制字。在控制字中的计数器选择与计数器的地址控制字。在控制字中的计数器选择与计数器的地址是两回事,不能混淆。计数器的地址用作是两回事,不能混淆。计数器的地址用作CPUCPU向计数向计数器写初值,或从计数器读取计数器的当前值。器写初值,或从计数器读取计数器的当前值。8. 8.3 .382538253的控制字和初始化编程的控制字和初始化编程 (2)(2)数据读数据读/ /写格式写格式(D(D5 5、D D4 4) )。 CPU CPU向计数器写入初值和读取它们的当前状态时,向计数器写入初值和读取它们的当前状态时,有几种不同的格式。读有几种不同的格式。读/ /写数据时,是读写数据时,
60、是读/ /写写8 8位数据位数据还是还是1616位数据;若是位数据;若是8 8位数据,可以令位数据,可以令D D5 5D D4 4=01=01,只读,只读/ /写低写低8 8位,则高位,则高8 8位自动置位自动置0 0;若是;若是1616位数据,而低位数据,而低8 8位位为为0 0,则可令,则可令D D5 5D D4 4=10=10,只读,只读/ /写高写高8 8位,低位,低8 8位就自动为位就自动为0 0;若令;若令D D5 5D D4 4=11=11时,就先读时,就先读/ /写低写低8 8位,后读位,后读/ /写高写高8 8位。位。在读取在读取1616位计数值时,可令位计数值时,可令D D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 苏州园区小学英语试卷
- 2025-2030安全驱动装置行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030季铵盐电解质行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030婴儿辅食企业创业板IPO上市工作咨询指导报告
- 2025-2030女士西装套装市场发展现状调查及供需格局分析预测研究报告
- 2025-2030太阳能供暖器行业市场深度分析及发展策略研究报告
- 2025-2030大豆加工行业市场深度调研及发展趋势与投资战略研究报告
- 2025-2030复合纸板管行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 考取中职电子商务教师资格证的试题及答案
- 2025-2030城市建设规划行业市场深度分析及竞争格局与投资价值研究报告
- “三宝”、“四口”、“五临边”防护安全检查表
- 英国文学之丁尼生 Tennyson and Break,Break,Break
- 99(03)S203 消防水泵接合器安装(含2003年局部修改版)
- 【配套K12】人美版小学五年级下册美术期末知识点
- 4-甲基-2-戊醇-理化性质及危险特性表
- 厦门市水资源公报(2023年)
- 刑法学(上册)马工程课件 第1章 刑法概说
- 输变电工程标准化施工作业卡-线路施工部分
- 【公开课】复调音乐的巡礼+课件-高一音乐人音版必修音乐鉴赏
- 江西住建云-建设项目数字化审图·项目监管一体化平台-建设单位用户手册
- 《哈姆莱特》同步练习-统编版高中语文必修下册
评论
0/150
提交评论