输入和输出接口技术PPT课件_第1页
输入和输出接口技术PPT课件_第2页
输入和输出接口技术PPT课件_第3页
输入和输出接口技术PPT课件_第4页
输入和输出接口技术PPT课件_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

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

文档简介

1、11/18/2021 5:42 PM1接接 口口 的的 概概 念念接口:接口:是中央处理器与存储器、外部设备,或是中央处理器与存储器、外部设备,或者两种外设之间,或者两种机器之间通过系统者两种外设之间,或者两种机器之间通过系统总线进行连接的总线进行连接的一组控制电路一组控制电路。 一个接口一般含有几个一个接口一般含有几个端口端口,CPU通过输通过输入输出指令向端口存或取信息。入输出指令向端口存或取信息。端口端口主要有三类:主要有三类:状态口、命令口和数据口状态口、命令口和数据口第1页/共83页11/18/2021 5:42 PM2I/O装置装置CPU接口电路I/O端口端口1I/O端口端口2I/

2、O端口端口3端口地址端口地址数据数据IORQRDWR数据数据状态状态控制控制第2页/共83页11/18/2021 5:42 PM3接接 口口 的的 功功 能能1) 设备的选择功能:设备的选择功能:端口的地址译码端口的地址译码2) 数据的寄存与缓冲:数据的寄存与缓冲:外设的速度慢外设的速度慢3) 信号转换:信号转换:串并、并串转换,数模、模数的转串并、并串转换,数模、模数的转换、光电隔离等换、光电隔离等4) 对外设的控制和监测:对外设的控制和监测:提供命令译码和状态信提供命令译码和状态信息息5) 中断或中断或DMA管理管理6) 可编程功能可编程功能 接口的基本功能就是对数据传送实现控制,具接口的

3、基本功能就是对数据传送实现控制,具体包括以下体包括以下六种六种功能:功能:第3页/共83页11/18/2021 5:42 PM4CPU与与I/O设备之间的接口信息设备之间的接口信息 1数据信息:数据信息: 1) 数字量:数字量:以二进制或以二进制或ASCII码表示的数或字符;码表示的数或字符; 2) 模拟量模拟量:如温度、压力、位移等;如温度、压力、位移等; 3) 开关量:开关量:只有两个状态的量,如开关的和与断,阀只有两个状态的量,如开关的和与断,阀门的开与关等,只要用门的开与关等,只要用1位二进制数即可表示。位二进制数即可表示。2状态信息:状态信息:指输入或输出设备的状态信息指输入或输出设

4、备的状态信息 1) 输入装置的信息:是否准备好输入装置的信息:是否准备好Ready; 2) 输出时输出装置:是否空输出时输出装置:是否空Empty; 3) 若输出装置正在输出信息,则以忙若输出装置正在输出信息,则以忙Busy指示;指示;3控制信息:控制信息:如控制输入输出装置启动或停止等信息。如控制输入输出装置启动或停止等信息。 CPU与与I/O设备之间要传送的信息包括设备之间要传送的信息包括数据信息、状态信数据信息、状态信息和控制信息息和控制信息。第4页/共83页11/18/2021 5:42 PM5端口的编址方式端口的编址方式 标准的标准的I/O寻址方式寻址方式(独立编址独立编址):(1)

5、 I/O设备的地址空间和存储器地址空间是独立的、设备的地址空间和存储器地址空间是独立的、分开的,即分开的,即I/O接口地址不占用存储器的地址空间。接口地址不占用存储器的地址空间。(2) 微处理器对微处理器对I/O设备的管理是用专门的设备的管理是用专门的IN和和OUT指指令来实现数据传送的。令来实现数据传送的。(3) CPU对对I/O设备的读写控制是用设备的读写控制是用I/O读写控制信号读写控制信号(IOR、IOW) 通常有两种通常有两种I/O接口结构:一种是接口结构:一种是标准的标准的I/O接口接口,一,一种是种是存储器映像存储器映像I/O结构结构。与之对应的有两种。与之对应的有两种I/O结构

6、寻址结构寻址方式。方式。第5页/共83页11/18/2021 5:42 PM6特点:特点:l端口与存储器分别独立编址端口与存储器分别独立编址 端口不占用内存空间端口不占用内存空间l设有专门的设有专门的 I/O指令对端口进行读写,指令对端口进行读写, 对内存操作的指令不能用于对内存操作的指令不能用于I/O端口端口例例 Intel的的80X86系列、系列、Z80系列系列I/O空空间间内内存存空空间间端口与存储器分别独立编址(端口与存储器分别独立编址(I/O映射方式)映射方式)例例 MOV 10H , AL ;对内存操作对内存操作 IN 10H, AL ;对端口操作对端口操作 第6页/共83页11/

7、18/2021 5:42 PM7端口的编址方式端口的编址方式 存储器映像存储器映像I/O寻址方式寻址方式(统一编址统一编址):(1) I/O设备的与存储器共用同一个地址空间。设备的与存储器共用同一个地址空间。(2) 微处理器用对存储器进行操作的指令来实现微处理器用对存储器进行操作的指令来实现对对I/O设备的管理。设备的管理。(3) CPU用对存储器的读写控制信号用对存储器的读写控制信号MEMR、MEMW对对I/O设备进行读写控制。设备进行读写控制。第7页/共83页11/18/2021 5:42 PM8端口与存储器统一编址(存储器映射方式)端口与存储器统一编址(存储器映射方式)特点:l I/O端

8、口相当于内存的一部分, 使内存容量减小l 对I/O端口的读/写与对存储器的读/写相同, 所有可对内存操作的指令对I/O端口均可使用, 指令系统中不专设I/O指令。例例: motorola的的M6800系列系列 日立日立H8S单片机系列单片机系列内内存存空空间间I/O空空间间第8页/共83页11/18/2021 5:42 PM9输入输出传输方式输入输出传输方式(1)无条件传送方式无条件传送方式 (2)查询传送方式查询传送方式 以上两种方式合称以上两种方式合称程序控制传送方式程序控制传送方式,即,即在程序的编制中利用在程序的编制中利用I/O指令来执行输入输出,指令来执行输入输出,CPU处于主动地位

9、。处于主动地位。(3)中断传送方式中断传送方式(4)直接存储器存取直接存储器存取(DMA)方式方式CPU与外部设备交换信息通常有如下几种方式:与外部设备交换信息通常有如下几种方式:第9页/共83页11/18/2021 5:42 PM10无条件传输方式无条件传输方式 最简单的传送方式,适于外设总是处于准备最简单的传送方式,适于外设总是处于准备好的情况,如发光二极管、开关设备等,较少使好的情况,如发光二极管、开关设备等,较少使用。用。1无条件传送的输入方式无条件传送的输入方式 由于简单外设用为输入设备时,输入数据的保由于简单外设用为输入设备时,输入数据的保持时间相对于持时间相对于CPU的处理时间要

10、长得多,所以可的处理时间要长得多,所以可直接直接使用三态缓冲器和总线相连使用三态缓冲器和总线相连。输入时认为来。输入时认为来自外设的数据已出现在三态缓冲器的输入端。自外设的数据已出现在三态缓冲器的输入端。2无条件传送的输出方式无条件传送的输出方式 在输出时,在输出时,CPU的输出数据经数据总线加至的输出数据经数据总线加至输输出锁存器出锁存器的输入端。的输入端。第10页/共83页11/18/2021 5:42 PM11说明:AEN为低电平,为CPU控制总线。三态缓冲器地址译码器数据来自外设无条件传送的输入方式数据总线地址总线AENIORA0A9Y第11页/共83页11/18/2021 5:42

11、PM12无条件传送的输出方式锁存器地址译码器数据数据到外设到外设数据总线数据总线地址总线地址总线AENIOWA0A9CY第12页/共83页11/18/2021 5:42 PM13查询传输方式查询传输方式 查询传送方式就是在输入和传送前先查询外设的状查询传送方式就是在输入和传送前先查询外设的状态,当外设准备好了才传送;若未准备好,则态,当外设准备好了才传送;若未准备好,则CPU等待。等待。1查询式输入查询式输入 CPU先从状态口输入外设的状态信息,检查外设是先从状态口输入外设的状态信息,检查外设是否已准备好数据。若未准备好,则否已准备好数据。若未准备好,则CPU进入循环等待,进入循环等待,直到准

12、备好才退出循环,输入数据。直到准备好才退出循环,输入数据。2查询式输出查询式输出 查询式输出时,查询式输出时,CPU必须先查外设的必须先查外设的BUSY状态,状态,看外设的数据缓冲区是否已空。若缓冲区为空,即看外设的数据缓冲区是否已空。若缓冲区为空,即BUSY为假,则为假,则CPU执行输出指令;否则若执行输出指令;否则若BUSY为真,为真,CPU就等待。就等待。第13页/共83页11/18/2021 5:42 PM14查询式输入的接口电路锁存器数据口地址译码数据系统地址总线IOR AENA0A9状态口地址译码去系统数据总线三态缓冲器缓冲器输入装置数据AEN IOR +5RDQ选通信号Ready

13、状态信息第14页/共83页11/18/2021 5:42 PM15查询式输入查询式输入MOV DX, STATUS-PORTPOLL: IN AL, DXTEST AL, 80HJE POLL ; 未准备好等未准备好等待待MOV DX, DATA-PORTIN AL, DXD7 D6 D5 D4 D3 D2 D1 D0数据口:D7状态口:Ready第15页/共83页11/18/2021 5:42 PM16查询式输出的接口电路锁锁存存器器数据口数据口地址译码地址译码数据数据系统系统地址总线地址总线A0A9状态口状态口地址译码地址译码系统数据总线系统数据总线三态三态缓冲器缓冲器输输出出装装置置AE

14、N IOR IOW AEN+5RDQ状态信息状态信息“Busy”去系统数据总线去系统数据总线BusyACK第16页/共83页11/18/2021 5:42 PM17查询式输出查询式输出MOV DX, STATUS-PORT POLL: IN AL, DXTEST AL, 80HJNE POLL ; 未准未准备好等待备好等待MOV DX, DATA-PORTMOV AL, BUFFEROUT DX, ALD7 D6 D5 D4 D3 D2 D1 D0数据口:D7状态口:Busy第17页/共83页11/18/2021 5:42 PM18中断传输方式中断传输方式 在查询传送方式中,在查询传送方式中,

15、CPU要不断地询问慢速要不断地询问慢速的外设,当外设没有准备好,的外设,当外设没有准备好,CPU就要等待,就要等待,不能做其它的操作,这样就浪费了不能做其它的操作,这样就浪费了CPU的时间。的时间。 为了提高为了提高CPU的工作效率,提出了的工作效率,提出了中断中断的概的概念。采用念。采用中断中断的传送方式,的传送方式,可允许可允许CPU和多个和多个外设同时工作,此时外设处于主动地位外设同时工作,此时外设处于主动地位。 在一定的条件下,外设向在一定的条件下,外设向CPU提出中断请求,提出中断请求,CPU响应中断请求后,暂停原程序的执行,转响应中断请求后,暂停原程序的执行,转至为中断服务,中断处

16、理结束后继续原程序的至为中断服务,中断处理结束后继续原程序的执行。执行。第18页/共83页11/18/2021 5:42 PM19锁存器地址译码数据ABIOR AENA0A9去系统数据总线三态缓冲器三态缓冲器输入装置数据+5RDQ选通中断矢量去数据总线装置中断允许中断请求 INTR中断响应 INTA第19页/共83页11/18/2021 5:42 PM20直接存储器存取方式直接存储器存取方式(DMA) 中断传送方式相对于查询传送方式来说,大中断传送方式相对于查询传送方式来说,大大提高了大提高了CPU的利用率,但中断传送方式仍然的利用率,但中断传送方式仍然是由是由CPU通过指令来传送的。通过指令

17、来传送的。每次中断,都要每次中断,都要进行保护断点、保护现场,传送数据、存取数进行保护断点、保护现场,传送数据、存取数据以及最后恢复现场、返回主程序等操作,需据以及最后恢复现场、返回主程序等操作,需要执行多条指令。要执行多条指令。 DMA方式是在存储器与方式是在存储器与I/O设备间在设备间在DMA控控制器的控制下,直接进行数据交换而不通过制器的控制下,直接进行数据交换而不通过CPU。这样数据传送上限将主要取决于存储器。这样数据传送上限将主要取决于存储器的存取速度。的存取速度。 第20页/共83页11/18/2021 5:42 PM21数据 状态/控制端口 端口DMA控制器控制器CPU存存储储器

18、器数据缓冲寄存器DMA请求触发器输入设备地址寄存器计 数 器控制/状态寄存器HOLDHLDAReadyDMA请求DMA响应总 线DMA控制器原理框图控制器原理框图第21页/共83页11/18/2021 5:42 PM22I/O接口的端口地址译码接口的端口地址译码全译码方式:全译码方式:即译码电路的一个输出引脚对应即译码电路的一个输出引脚对应唯一的地址。唯一的地址。部分译码方式:部分译码方式:在译码电路里只使用了部分地在译码电路里只使用了部分地址线,译码电路的每个输出引脚对应着一个地址线,译码电路的每个输出引脚对应着一个地址区域。址区域。第22页/共83页11/18/2021 5:42 PM23

19、利用门电路进行地址译码利用门电路进行地址译码12131212345611128121312A9A8A6A3A2A1A7A5A4A0AENCS经过译码后的端口号地址为:34EHA9 A8 A7 A6 A5 A4 A3 A2 A1 A0 AEN 1 1 0 1 0 0 1 1 1 0 0第23页/共83页11/18/2021 5:42 PM24利用门电路进行地址译码利用门电路进行地址译码12131212345611128121312A9A6A4A3A1A0A8A7A5A2AENCS经过译码后的端口号地址为:25BHA9 A8 A7 A6 A5 A4 A3 A2 A1 A0 AEN 1 0 0 1

20、0 1 1 0 1 1 0第24页/共83页11/18/2021 5:42 PM25采用译码器进行地址译码采用译码器进行地址译码U574LS13812364515141312111097ABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y7 74LS138译码器有译码器有3个输个输入端入端(A, B, C),3个控制端个控制端(G1, G2A, G2B),8个输出端个输出端(Y0Y7)。 只有当只有当G1端为高电平,端为高电平,G2A、G2B都为低电平时,都为低电平时,译码器才对来自输入端的译码器才对来自输入端的C、B、A的某一组合进行译码。的某一组合进行译码。译码电路常用的典型译码器为译码电

21、路常用的典型译码器为74LS138(三八译码器三八译码器)第25页/共83页11/18/2021 5:42 PM26控制端控制端输入端输入端输输 出出 端端G1G2AG2BCBAY0Y1Y2Y3Y4Y5Y6Y71000000111111100110111111010110111110111110111110011110111101111110111101111110111111111110非上述情况非上述情况1111111174LS138(三八译码器三八译码器)逻辑功能表逻辑功能表第26页/共83页11/18/2021 5:42 PM27A9A8A6A7A5A4A312312131212312

22、374LS13812364515141312111097ABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y7340H341H342H343H344H345H346H347HA0A1A2AENA9 A8 A7 A6 A5 A4 A3 A2 A1 A0 AEN 1 1 0 1 0 0 0 0采用译码器进行地址译码第27页/共83页11/18/2021 5:42 PM28825319201013178765432111141691518222321A0A1OUT0OUT1OUT2D0D1D2D3D4D5D6D7G0G1G2CLK0CLK1CLK2RDWRCS74LS3212374LS1381236

23、4515141312111097ABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y774LS11121312A2A3A4A0A1340343HA9A8A6A7A5AENA9 A8 A7 A6 A5 A4 A3 A2 A1 A0 AEN 1 1 0 1 0 0 假如假如A, B, C三端的电平为三端的电平为0, 0, 0时,则时,则Y0端输出的地址为一端输出的地址为一个地址区域个地址区域(340H343H)。8253接口芯片共有接口芯片共有4个端口地址。个端口地址。采用译码器进行地址译码采用译码器进行地址译码第28页/共83页11/18/2021 5:42 PM29I/O端口的地址分配和地址译

24、码端口的地址分配和地址译码q I/O接口电路必须有自己的地址,以便让接口电路必须有自己的地址,以便让CPU能随能随时访问。时访问。80X86微处理器由低微处理器由低16位地址线寻址位地址线寻址I/O端口,端口,故可寻址故可寻址64K个个I/O端口地址。但端口地址。但实际上实际上8086/8088 PC机只用了最前面的机只用了最前面的1K个端口地址,即个端口地址,即03FFH,因此,因此只使用了地址总线的低只使用了地址总线的低10位,即只有地址线位,即只有地址线A0A9用用于于I/O地址译码。地址译码。q对于端口地址通常采用两级译码方法,通常高位地对于端口地址通常采用两级译码方法,通常高位地址产

25、生译码的片选信号;低位产生接口芯片内的寄存址产生译码的片选信号;低位产生接口芯片内的寄存器地址。器地址。高位地址:高位地址:接芯片的接芯片的CS端端(CHIP SELECT片选信号片选信号)低位地址:低位地址:如如A0,A1地址线直接接芯片的对应端。地址线直接接芯片的对应端。q 地址译码可用一般的组合逻辑电路,也可以用门电地址译码可用一般的组合逻辑电路,也可以用门电路或译码器芯片实现。路或译码器芯片实现。 第29页/共83页11/18/2021 5:42 PM30可编程定时器可编程定时器/计数器芯片计数器芯片8253 要实现定时或延时控制,有三种主要方法:要实现定时或延时控制,有三种主要方法:

26、1) 软件:软件:循环语句循环语句 优点:容易实现,不需硬件开销;优点:容易实现,不需硬件开销; 缺点:占用缺点:占用CPU,降低了,降低了CPU的利用率的利用率2) 不可编程的硬件定时:不可编程的硬件定时:如集成电路如集成电路555 优点:电路简单,修改电路参数可使定时范围变化优点:电路简单,修改电路参数可使定时范围变化 缺点:硬件连接好后,定时值将不能改变,不可编缺点:硬件连接好后,定时值将不能改变,不可编程。程。3) 可编程的硬件定时:可编程的硬件定时:芯片芯片8253(Intel 公司)。公司)。 可编程定时可编程定时/计数器是为方便微型计算机系统的设计计数器是为方便微型计算机系统的设

27、计和应用而研制的,很容易和系统总线连接。它的定时值和应用而研制的,很容易和系统总线连接。它的定时值和范围可以很容易地由软件来确定和改变,能够满足各和范围可以很容易地由软件来确定和改变,能够满足各种不同的定时和计数要求,因而在微型计算机系统的设种不同的定时和计数要求,因而在微型计算机系统的设计和应用中得到了广泛的应用。计和应用中得到了广泛的应用。第30页/共83页11/18/2021 5:42 PM318253的结构及引脚的结构及引脚 825319201013178765432111141691518222321A0A1OUT0OUT1OUT2D0D1D2D3D4D5D6D7G0G1G2CLK0

28、CLK1CLK2RDWRCS8253有有24条引脚,双列直插式封装:条引脚,双列直插式封装:1、与数据总线相连:、与数据总线相连: D0 D72、与、与CPU的控制线相连:的控制线相连: RD、WR、A0、A1、CS3、3个计数器通道:个计数器通道: CLK,GATE,OUT(共共9个个)4、电源和地线:、电源和地线: Vcc、GND第31页/共83页11/18/2021 5:42 PM32 数据总线数据总线缓冲器缓冲器计数器计数器0 号号D7D0 内内部部数数据据总总线线RDWRA0A1CS读读/写写控制控制逻辑逻辑计数器计数器1 号号计数器计数器2 号号控制字控制字寄存器寄存器CLK0GA

29、TE0OUT0CLK1GATE1OUT1CLK2GATE2OUT28253的内部结构的内部结构第32页/共83页11/18/2021 5:42 PM338253的内部结构的内部结构数据总线缓冲器数据总线缓冲器vCPU向向8253所写的控制字通过它和所写的控制字通过它和8253内部的数据总内部的数据总线传送给控制字寄存器寄存;线传送给控制字寄存器寄存;vCPU向各计数器所写的计数初值经它和内部总线送到向各计数器所写的计数初值经它和内部总线送到指定的计数器中;指定的计数器中;vCPU读某计数器的现行计数值时,该值经内部总线和读某计数器的现行计数值时,该值经内部总线和缓冲器传送到系统的数据总线上,被

30、缓冲器传送到系统的数据总线上,被CPU读取读取读读/ /写控制逻辑写控制逻辑 读写逻辑接收系统总线的读写逻辑接收系统总线的5个输入信号,根据这个输入信号,根据这5个信个信号产生整个器件操作的控制信号。见号产生整个器件操作的控制信号。见P186表表5-4控制字寄存器控制字寄存器(CW) 控制寄存器寄存数据缓冲器送来的控制寄存器寄存数据缓冲器送来的控制字控制字,控制每个,控制每个计数器的工作方式,选择计数器按什么进制计数,并确计数器的工作方式,选择计数器按什么进制计数,并确定初值的写入顺序。控制字寄存器只能写入,不能读定初值的写入顺序。控制字寄存器只能写入,不能读出。出。第33页/共83页11/1

31、8/2021 5:42 PM348253的内部结构的内部结构计数器计数器0、计数器、计数器1、计数器、计数器2 计数器计数器0、1、2是是3个独立的计数器,它们的内部结构相同。个独立的计数器,它们的内部结构相同。 每个计数通道都必须由每个计数通道都必须由CPU写入控制字和计数初始值后才能开始工作。写入控制字和计数初始值后才能开始工作。第34页/共83页11/18/2021 5:42 PM358253的内部结构的内部结构计数器的计数器的逻辑框图逻辑框图如下:如下: 计数初值计数器减1计数器输出寄存器CLKOUT 写入计数器的初值保存在写入计数器的初值保存在计数初值寄存器中,由计数初值寄存器中,由

32、CLK脉冲的一个上升沿和一个下脉冲的一个上升沿和一个下降沿将其装入减降沿将其装入减1计数器。计数器。 输出寄存器的值跟随减输出寄存器的值跟随减1计计数器的变化。数器的变化。 每个计数器都是对输入的每个计数器都是对输入的CLK脉冲按二进制或十进制脉冲按二进制或十进制的预置值开始递减计数。的预置值开始递减计数。第35页/共83页11/18/2021 5:42 PM368253的控制字定义的控制字定义SC1SC0RL1RL0M2M1M0BCD510140013110201011000000方式方式M0M1M2BCD码计数1二进制计数08253有6种工作方式:方式0:计数结束产生中断方式1:单稳态触发

33、器方式2:频率发生器方式3:方波发生器方式4:软件触发选通方式5:硬件触发选通第36页/共83页11/18/2021 5:42 PM378253的控制字定义的控制字定义SC1SC0RL1RL0M2M1M0BCDSC1SC0选择计数器选择计数器00计数器计数器001计数器计数器110计数器计数器211非非 法法RL1RL0操操 作作 类类 型型00计数器锁存计数器锁存01只读写低位字节只读写低位字节10只读写高位字节只读写高位字节11先读写低位字节先读写低位字节后读写高位字节后读写高位字节 每个计数通道都必须由每个计数通道都必须由CPU写入控制字和计数初始值后写入控制字和计数初始值后才能开始工作

34、。才能开始工作。第37页/共83页11/18/2021 5:42 PM388253的接口方法的接口方法 一个一个8253占用占用4个端口地址个端口地址,由,由A0A1的取值来区分,的取值来区分,00、01、10分别寻址分别寻址0号、号、1号、号、2号号3个计数器,个计数器,11寻址控制字寄存器寻址控制字寄存器,4个端口的具体地址是由个端口的具体地址是由CS和和A1A0共同决定。共同决定。 在在80X86系列计算机中,定时系列计算机中,定时/计数器的端口地址为计数器的端口地址为40H(计数计数器器0), 41H(计数器计数器1), 42H(计数器计数器2), 43H(控制字寄存器控制字寄存器)。

35、例:见例:见P190图图5-38 第38页/共83页11/18/2021 5:42 PM391)当控制字当控制字CW写入到控制字寄存器后写入到控制字寄存器后,则则OUT端变低端变低(只有方式只有方式0独有独有)。2)8253在在CPU写入计数初值后,开始计数写入计数初值后,开始计数。3)门控信号门控信号GATE为高电平开始计数为高电平开始计数,低电平则暂停计低电平则暂停计数数;4)计数结束计数结束,OUT输出端变为高电平输出端变为高电平,计数器只计一遍计数器只计一遍;5)在计数过程中可改变计数值在计数过程中可改变计数值,则计数器以新值开始计则计数器以新值开始计数。数。6)8253内部没有中断控

36、制电路内部没有中断控制电路,也没有专用的中断请求也没有专用的中断请求引线引线,若要用于中断若要用于中断,可用可用OUT信号作为中断请求信号信号作为中断请求信号,但需要由外接的中断优先权排队电路与向量产生电路。但需要由外接的中断优先权排队电路与向量产生电路。方式方式0:计数结束中断方式:计数结束中断方式第39页/共83页11/18/2021 5:42 PM40方式方式0:计数结束中断方式:计数结束中断方式WRCLKGATEOUT43210FFCW=10 LSB=4第40页/共83页11/18/2021 5:42 PM41方式方式1:硬件触发单拍脉冲:硬件触发单拍脉冲1)当当CPU写入控制字之后写

37、入控制字之后,输出输出OUT将变为高电平将变为高电平。2)当当CPU写完计数值后,计数器并不马上开始计数,写完计数值后,计数器并不马上开始计数,直到直到外部门控信号外部门控信号GATE启动之后才开始计数启动之后才开始计数,输出输出OUT变低。变低。3)在整个计数过程中,在整个计数过程中,OUT都维持为低,直到计数都维持为低,直到计数到到0,输出变为高,因此输出为一个,输出变为高,因此输出为一个单拍脉冲单拍脉冲。4)通过通过GATE的重复触发和计数到的重复触发和计数到0两种动作,两种动作,OUT脚可输出一定宽度的脉冲信号。脚可输出一定宽度的脉冲信号。5)在计数过程中,在计数过程中,CPU可改变计

38、数值,这时计数过可改变计数值,这时计数过程不受影响,计数到零后输出为高。若再次触发程不受影响,计数到零后输出为高。若再次触发启动,则计数器将按新输入的计数值计数,即启动,则计数器将按新输入的计数值计数,即计计数值是下次有效的数值是下次有效的。第41页/共83页11/18/2021 5:42 PM42WRCLKGATEOUT3210FF 3CW=12 LSB=3方式方式1:硬件触发单拍脉冲:硬件触发单拍脉冲第42页/共83页11/18/2021 5:42 PM43方式方式2:频率发生器:频率发生器1) 当当CPU输出控制字后输出控制字后,输出端输出端OUT将为高将为高。2) 在写入计数值之后,计

39、数器将在写入计数值之后,计数器将立即自动对输入时立即自动对输入时钟钟CLK计数计数。在计数过程中输出始终保持为高,。在计数过程中输出始终保持为高,直到计数器直到计数器减为减为1时时,输出将变低输出将变低,经过一个,经过一个CLK周期,输出恢复为高周期,输出恢复为高 ,且计数器开始重新计数。,且计数器开始重新计数。 3) 不用重新设置计数值,通道能够不用重新设置计数值,通道能够连续工作连续工作,输出输出固定频率的脉冲固定频率的脉冲。4) 计数过程可由门控脉冲控制。计数过程可由门控脉冲控制。当当GATE变低时,就变低时,就暂停计数。暂停计数。5) 在计数过程中可以改变计数值,但也是在计数过程中可以

40、改变计数值,但也是下次有效下次有效的的。第43页/共83页11/18/2021 5:42 PM44WRCLKGATEOUT321321CW=14 LSB=3方式方式2:频率发生器:频率发生器第44页/共83页11/18/2021 5:42 PM45方式方式3:方波发生器:方波发生器1) 当当CPU设置控制字后,设置控制字后,OUT输出变为高。输出变为高。2) 在写完计数值之后就自动开始计数,输出保持为高;在写完计数值之后就自动开始计数,输出保持为高;3) 若计数值为若计数值为偶数偶数,在装入计数之后,每一个,在装入计数之后,每一个CLK脉冲脉冲使计数值使计数值减减2,当计数到,当计数到0时,一

41、方面使输出改变状态,时,一方面使输出改变状态,另一方面又重新装入计数值开始新的计数,过程就这另一方面又重新装入计数值开始新的计数,过程就这样周而复始地重复进行。它可以在样周而复始地重复进行。它可以在OUT脚获得一个脚获得一个完完全对称的方波全对称的方波。4) 若计数值为若计数值为奇数奇数,则在装入计数值后的第一个,则在装入计数值后的第一个CLK脉脉冲使计数器减冲使计数器减1,其后每一个,其后每一个CLK脉冲使计数器减脉冲使计数器减2。当计数到当计数到0时,改变输出状态,同时重新装入计数值。时,改变输出状态,同时重新装入计数值。这以后的第一个这以后的第一个CLK脉冲使计数器减脉冲使计数器减3,以

42、后每一个,以后每一个CLK脉冲,计数器仍减脉冲,计数器仍减2。它可以在。它可以在OUT脚获得一个脚获得一个不对称的方波。不对称的方波。5) 如果如果n=4,则方波的宽度为,则方波的宽度为N/2。如果。如果N=5,则高电平,则高电平为为(N+1)/2,低电平为,低电平为(N-1)/2。第45页/共83页11/18/2021 5:42 PM46WRCLKGATEOUT424242CW=16 LSB=4方式方式3:方波发生器:方波发生器第46页/共83页11/18/2021 5:42 PM47方式方式4:软件触发选通:软件触发选通1)当写入控制字后,输出当写入控制字后,输出OUT为高为高(原为高则保

43、持为高,原为低则变为高原为高则保持为高,原为低则变为高)。2)当当写入计数值后立即开始计数写入计数值后立即开始计数(相当于软件启动相当于软件启动),当计数到,当计数到0后,输出变低,经过一个输入时钟周期,输后,输出变低,经过一个输入时钟周期,输出又变高。计数器停止计数。出又变高。计数器停止计数。3)与方式与方式0相似,不同的是到零时相似,不同的是到零时OUT由高变低,说明计数值到。由高变低,说明计数值到。第47页/共83页11/18/2021 5:42 PM48WRCLKGATEOUT3210FF FECW=18 LSB=3方式方式4:软件触发选通:软件触发选通第48页/共83页11/18/2

44、021 5:42 PM49方式方式5:硬件触发选通:硬件触发选通1) 设置控制字后,输出设置控制字后,输出OUT变为高。变为高。2) 在设置计数值之后,计数器并不立即开始计在设置计数值之后,计数器并不立即开始计数,而是数,而是由门控脉冲由门控脉冲GATE的上升沿触发启动的上升沿触发启动。3) 当计数到当计数到0时,输出变低,经过一个时,输出变低,经过一个CLK脉冲,脉冲,输出恢复为高,停止计数。要等到下次门控输出恢复为高,停止计数。要等到下次门控脉冲的触发才能再计数。脉冲的触发才能再计数。4) 与方式与方式1不同的是此方式必须等不同的是此方式必须等GATE上升沿上升沿出现后,先是输出一个高电平

45、,然后当计数出现后,先是输出一个高电平,然后当计数为零时在为零时在OUT产生宽度为一个时钟周期的负产生宽度为一个时钟周期的负脉冲,用作硬件触发选通。脉冲,用作硬件触发选通。第49页/共83页11/18/2021 5:42 PM50WRCLKGATEOUT3210FF 3CW=1A LSB=3方式方式5:硬件触发选通:硬件触发选通第50页/共83页11/18/2021 5:42 PM518253的编程的编程 对对8253的初始化编程包括两方面的内容:的初始化编程包括两方面的内容:向控制字寄向控制字寄存器写入控制字;向相应通道计数器写入计数值存器写入控制字;向相应通道计数器写入计数值(时间常时间常

46、数数)。解:解:8253计数器计数器0只能工作于方式只能工作于方式2计算计数初值:计算计数初值:H4F015001021011036计数初值控制字为:控制字为:00110100B(34H,采用二进制计数),采用二进制计数)00110101B(35H,采用,采用BCD码计数)码计数)例:利用8253的通道0产生2KHz的频率波形,其中负脉冲宽度为1s。假设CLK0输入的时钟是1MHz,8253的地址为4043H。第51页/共83页11/18/2021 5:42 PM528253的编程的编程1 1、计数初值用二进、计数初值用二进制数表示:制数表示:MOV AL,34HOUT 43H,ALMOV A

47、L,0F4HOUT 40H,ALMOV AL,01HOUT 40H,AL2 2、计数初值用、计数初值用BCDBCD数数即十进制数表示:即十进制数表示:MOV AL,35HOUT 43H,ALMOV AL,00HOUT 40H,ALMOV AL,05HOUT 40H,ALq用二进制计数时,初值的范围是用二进制计数时,初值的范围是0000HFFFFH,0000H代表最大值代表最大值65536;q用用BCD码计数时,初值的范围是码计数时,初值的范围是0000H9999H,0000H代表最大值代表最大值10000;第52页/共83页11/18/2021 5:42 PM538253在生产线自动计数系统中

48、的应用在生产线自动计数系统中的应用 电路由一个红外电路由一个红外LED发发光管、一个复合型光电晶体光管、一个复合型光电晶体管、两个施密特触发器管、两个施密特触发器74LS14及及1片片8253芯片构成。芯片构成。用用8253的通道的通道1来计数。安装来计数。安装时将红外时将红外LED发光管装在生发光管装在生产线的一侧,复合型光电晶产线的一侧,复合型光电晶体管装在生产线的另一侧,体管装在生产线的另一侧,对称安装。对称安装。第53页/共83页11/18/2021 5:42 PM548253在生产线自动计数系统中的应用在生产线自动计数系统中的应用 当当LED发光管与光电管之间无发光管与光电管之间无工

49、件通过时,工件通过时,LED发出的光能够发出的光能够照在光电管上,使光电管导通,照在光电管上,使光电管导通,集电极变为低电平。此信号经集电极变为低电平。此信号经74LS14驱动整形后送到驱动整形后送到8253的的CLK1,使,使8253的的CLK1端也为低端也为低电平。当电平。当LED发光管与光电管之发光管与光电管之间有工件通过时,间有工件通过时,LED发出的光发出的光被工件挡住,光电管截止,集电被工件挡住,光电管截止,集电极变为高电平,使极变为高电平,使8253的的CLK1端端也为高电平。待工件通过后,也为高电平。待工件通过后,CLK1端又回到了低电平。这样,端又回到了低电平。这样,每通过一

50、个工件,就从每通过一个工件,就从CLK1端输端输入一个正脉冲,利用入一个正脉冲,利用8253对此脉对此脉冲计数,就可以统计出工件的个冲计数,就可以统计出工件的个数来。数来。第54页/共83页11/18/2021 5:42 PM558253在生产线自动计数系统中的应用在生产线自动计数系统中的应用 8253的的A1和和A0分别与分别与CPU地址总线的地址总线的A2和和A1相连。相连。GATE1接接+5V,OUT1作为中作为中断信号断信号INT接到接到8259A的一个的一个中断请求输入端中断请求输入端IR2。本系统。本系统中设计的中设计的8253的端口地址分的端口地址分别为别为0350H,0352H

51、,0354H,0356H。第55页/共83页11/18/2021 5:42 PM568253在生产线自动计数系统中的应用在生产线自动计数系统中的应用 选择选择计数器计数器1 1工作在方式工作在方式0 0。在。在82538253的方式的方式0 0工作方式中,工作方式中,从将计数初值写入计数器到开始减从将计数初值写入计数器到开始减1 1计数之间,有一个时钟计数之间,有一个时钟脉冲的延迟。若计数初值为脉冲的延迟。若计数初值为n=999n=999,那么经过,那么经过n+1n+1个即个即10001000个脉冲时计数值减为个脉冲时计数值减为0 0,并在,并在OUT1OUT1端输出一正跳变,这可以端输出一正

52、跳变,这可以作为中断请求。在中断服务子程序中作为中断请求。在中断服务子程序中CPUCPU可以做其他处理,可以做其他处理,如送下一个包装箱等。如送下一个包装箱等。若要求一个包装箱内装工件若要求一个包装箱内装工件20002000个,则计数初值为个,则计数初值为19991999,按十进制计数,先送低按十进制计数,先送低8 8位,再送高位,再送高8 8位,控制字为位,控制字为01110001B01110001B。初始化程序为:。初始化程序为:MOV ALMOV AL,01110001B01110001BMOV DX, 0356HMOV DX, 0356HOUT DX,ALOUT DX,ALMOV AL

53、, 99HMOV AL, 99HMOV DX, 0352HMOV DX, 0352HOUT DX, ALOUT DX, ALMOV AL,19HMOV AL,19HOUT DX, ALOUT DX, AL 第56页/共83页11/18/2021 5:42 PM57可编程并行输入输出接口芯片可编程并行输入输出接口芯片8255A 随着大规模集成电路技术的发展,出现了许多通用的随着大规模集成电路技术的发展,出现了许多通用的可编程接口芯片,可编程接口芯片,8255A就是一片典型的并行输入输出就是一片典型的并行输入输出接口芯片。接口芯片。并行接口芯片一般应具有以下功能:并行接口芯片一般应具有以下功能:1

54、、有两个或两个以上、具有锁存器或缓冲器的数据端口。、有两个或两个以上、具有锁存器或缓冲器的数据端口。2、每个数据端口都有与、每个数据端口都有与CPU用应答方式交换信息所必须的控用应答方式交换信息所必须的控制和状态信息以及与外设交换信息所需的控制和状态信息制和状态信息以及与外设交换信息所需的控制和状态信息3、通常每个数据端口还具有能用中断方式与、通常每个数据端口还具有能用中断方式与CPU交换信息所交换信息所必须的电路。必须的电路。4、选片和控制电路。、选片和控制电路。5、可用程序选择数据端口、端口的传送方向、与、可用程序选择数据端口、端口的传送方向、与CPU交换信交换信息的方法息的方法(查询或中

55、断查询或中断)等。等。6、芯片在工作前可通过输入输出指令对其编程、芯片在工作前可通过输入输出指令对其编程(即初始化即初始化),以规定它的工作方式。以规定它的工作方式。第57页/共83页11/18/2021 5:42 PM588255A的结构及引脚的结构及引脚825534333231302928274321403938371819202122232425141516171312111053698356D0D1D2D3D4D5D6D7PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC7RDWRA0A1RES

56、ETCS1、与、与CPU相连的引脚相连的引脚D0D7:数据线,与系统总线相连数据线,与系统总线相连A0A1:用来选择用来选择3个数据口和控制字寄存个数据口和控制字寄存器器RESET:高电平有效,使高电平有效,使8255内部所有寄内部所有寄存器清零,所有的存器清零,所有的I/O端口被置为输入方式端口被置为输入方式RD:低电平有效,低电平有效,CPU从从8255读取信息。读取信息。WR:低电平有效,低电平有效,CPU把数据或控制字把数据或控制字写入写入8255A。CS:低电平有效,一般接端口地址译码器低电平有效,一般接端口地址译码器输出端,允许输出端,允许8255A与与CPU进行通信。进行通信。2

57、、与外设相连的引脚、与外设相连的引脚PA0PA7,PB0PB7,PC0PC7:分别对分别对应端口应端口A、B和和C。第58页/共83页11/18/2021 5:42 PM59 A组组控制控制B组组控制控制数据数据总线总线缓冲器缓冲器A组组端口端口A (8)A组组端口端口C高高4位位B组组端口端口C低低4位位B组组端口端口B (8)RDWRA0A1RESETCS读读/写写控制控制逻辑逻辑D0D78位内部位内部数据总线数据总线 PA7PA0 PC7PC4PC3PC0 PB7PB0CPUCPU接口接口内部逻辑内部逻辑外设接口外设接口第59页/共83页11/18/2021 5:42 PM608255A

58、的基本结构的基本结构 q 数据总线缓冲器:数据总线缓冲器:三态双向三态双向8位缓冲器,是位缓冲器,是8255与数与数据总线的接口。输入输出的数据以及据总线的接口。输入输出的数据以及CPU发出的命令发出的命令控制字和外设的状态信息,都是通过这个缓冲器传送控制字和外设的状态信息,都是通过这个缓冲器传送的。的。q 读读/写控制逻辑写控制逻辑(硬件控制线)(硬件控制线)1) RD:控制控制8255送出数据或状态信息至系统数据总线。送出数据或状态信息至系统数据总线。2) WR:控制把控制把CPU输出到系统总线上的数据或命令写输出到系统总线上的数据或命令写到到8255。3) A1、A0:用来选择用来选择A

59、、B、C三个端口和控制字寄存三个端口和控制字寄存器。器。4) RESET:复位信号,清除控制寄存器,同时置复位信号,清除控制寄存器,同时置A、B、C三个端口为输入方式。三个端口为输入方式。5) CS:片选信号,由它启动片选信号,由它启动CPU与与8255之间的通信。之间的通信。第60页/共83页11/18/2021 5:42 PM618255A的基本结构的基本结构例:设例:设8255A的端口地址为(的端口地址为(80H83H),请),请写出在执行下列指令时,读写控制逻辑信号写出在执行下列指令时,读写控制逻辑信号A0、A1、RD#、WR#和和CS#的电平。的电平。A1 A0 RD# WR# CS

60、#IN AL,82HOUT 80H,AL 1 0 0 1 0 0 0 1 0 0第61页/共83页11/18/2021 5:42 PM628255A的基本结构的基本结构q 内部控制逻辑:内部控制逻辑:包括包括A组控制逻辑组控制逻辑和和B组控制逻辑组控制逻辑 这是两组根据这是两组根据CPU的方式选择控制字来控制的方式选择控制字来控制8255工作方式的电路。工作方式的电路。其控制寄存器接收其控制寄存器接收CPU输出的方式控制字,决定两组的工作方式;还可输出的方式控制字,决定两组的工作方式;还可以根据以根据CPU的状态字对端口的状态字对端口C的每一位实现按位复位或置位。的每一位实现按位复位或置位。A

温馨提示

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

评论

0/150

提交评论