《微型计算机原理及应用》课件第6章 (2).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《微型计算机原理及应用》课件第6章 (2).ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微型计算机原理及应用 微型计算机原理及应用课件第6章 2 微型计算机 原理 应用 课件
- 资源描述:
-
1、第6章常用接口芯片及应用6.1 简单接口6.2 可编程并行接口82556.3 可编程定时器82536.4 可编程串行接口82506.5 键盘接口6.6 打印机接口6.7 显示器接口6.8 光电隔离输入/输出接口6.9 数/模(D/A)变换器接口6.10 模/数(A/D)变换器接口习题第6章常用接口芯片及应用6.1 简简 单单 接接 口口6.1.1 三态门三态门在本书的第2章中,曾描述过由8个三态门构成的芯片74LS244。在那里,244是作为信号驱动器使用的。在第5章的图5.2中,描述过利用三态门作为输入接口的实例。由于单独的三态门没有数据的锁存能力,因此它只能作为输入接口来使用。第6章常用接
2、口芯片及应用6.1.2 锁存器锁存器锁存器具有保持(或锁存)数据的能力,可以用做输出接口。常用的锁存器接口芯片有许多,其中有74LS273,它是由8个D触发器集成在一块芯片中构成的。其引线及真值表如图6.1所示。图6.1 74LS273 8D锁存器引线及真值表在图5.3中,已经利用273作为输出接口,用来控制发光二极管发光。第6章常用接口芯片及应用S CP DX QX 0 1 1 X?X 1 0 0 1 0 图6.1 74LS273 8D锁存器引线及真值表第6章常用接口芯片及应用由于锁存器的输出是二态的,没有第三态(高阻)状态。因此,单独的锁存器只能作为输出接口。锁存器不能单独作为输入接口,因
3、为当它作为输入接口时,必然引起数据总线竞争。第6章常用接口芯片及应用6.1.3 带有三态门输出的锁存器带有三态门输出的锁存器带有三态门输出的锁存器有多种。前面第2章中曾给出8282(74LS373)和8283,它们是用高电平锁存数据。在这里再给读者介绍另一种带有三态门输出的锁存器芯片74LS374,这也是经常使用的芯片,其引线图及真值表如图6.2所示。第6章常用接口芯片及应用DX CP OE QX 1 0 X?X 0 0 1 1 0 Z 图6.2 74LS274的引线及真值表第6章常用接口芯片及应用由于374中既集成了锁存器又集成了三态门,因此它既可以作为输出接口又可以作为输入接口使用。为说明
4、它的应用,现举例如下:假定某外设需要实现最简单的温度控制,外设的引线如图6.3所示,其中温度输出信号D0D7可输出最高为100、最低为0的二进制编码表示的温度值。其控制输入A和B是用数字编码实现对温度的控制,具体控制规则如下:B A 功能 0 0 降 温 1 1 升 温 其他 保 持 第6章常用接口芯片及应用在上述已知条件下,即在已知外设的引线和它的控制特性的情况下,需要做好下面两件事:首先指定接口地址8000H801FH可随意使用,并利用上面提到的接口芯片74LS374,将此外设连接到8088的系统总线上,画出连接图。也就是说,要做的第一件事就是硬件连接。现将外设和它的接口连接电路一并画在图
5、6.3上。第6章常用接口芯片及应用图6.3 74LS374作输入/输出口与外设连接图 第6章常用接口芯片及应用在图6.3中,接口地址译码采用了部分地址译码方式。两片74LS374分别用做输出接口和输入接口,而且各自占用16个接口地址,其中输入接口的地址为8010H801FH,而输出接口的地址为8000H800FH。由于采用部分地址译码,因此可以使用其中任何一个地址,而剩下的地址空着不用。当然,也可以采用全地址译码方式或采用其他译码电路来实现,只是译码电路更复杂一些。第6章常用接口芯片及应用输出接口用于输出控制信号,输入接口用于输入当前的温度。值得注意的是,外设输出的温度值是由内总线上的时钟信号
6、CLK不断地锁存于74LS374内部的。由于CLK的频率足够高,因此可即时将温度数据锁存。要做的第二件事是在硬件连接的基础上编写程序来控制外设工作。若要求保持外设的温度为951,则温度高了降温,温度低了升温。第6章常用接口芯片及应用根据硬件连接图和控制要求,编写程序如下:CONTL:MOV DX,8010H IN AL,DX CMP AL,96 JNC TMDOW CMP AL,95 JC TMPUP MOV DX,8000H MOV AL,01H OUT DX,AL JMP CONTL 第6章常用接口芯片及应用TMDOW:MOV DX,8000H MOV AL,00H OUT DX,AL J
7、MP CONTL TMPUP:MOV DX,8000H MOV AL,03H OUT DX,AL JMP CONTL 第6章常用接口芯片及应用6.2 可编程并行接口可编程并行接口82556.2.1 8255的引线及内部结构的引线及内部结构1外部引线及其功能外部引线及其功能8255的外部引线如图6.4所示。假设想像成将8255从中间分成两半,其左边与系统总线相连接,而其右边则与外设相连接。第6章常用接口芯片及应用它与系统总线相连接的引线有:8条双向数据线D0D7,用以传送命令、数据或8255的状态。为读控制信号线,与其他信号线一起实现对8255的读操作。通常接系统总线的信号(或信号)。RD第6章
8、常用接口芯片及应用图6.4 8255的外部引线第6章常用接口芯片及应用为写控制信号线,与其他信号线一起实现对8255的写操作。通常接系统总线的信号(或信号)。为片选信号线,当它为低电平时才能选中该8255,才能对它进行读写操作。通常由高位地址译码输出接在上,以便将该8255放在接口地址空间的规定地址上。WRWRIOWCSCS第6章常用接口芯片及应用A0、A1为8255的地址选择信号线。8255内部有三个口:A口、B口和C口,还有一个控制寄存器CR。它们各占一个接口地址。A0、A1的不同编码可产生它们的地址,详情见后面8255的寻址。通常将8255的A0、A1与系统总线的A0、A1相连接,它们与
9、一起决定8255的接口地址。RESET为复位输入信号。此端上的高电平可使8255复位。复位后,8255的A口、B口和C口均被定为输入状态。该端低电平使8255正常工作。第6章常用接口芯片及应用PA0PA7为A口的8条输入输出信号线。该口的这8条线是工作于输入、输出还是双向(输入、输出)方式可由软件编程决定。PB0PB7为B口的8条输入输出信号线。利用软件编程可指定这8条线是输入还是输出。PC0PC7这8条线根据其工作方式可作为数据的输入或输出线,也可以用做控制信号的输出或状态信号的输入线,具体情况将在本节后面做介绍。第6章常用接口芯片及应用2内部结构内部结构8255的内部结构框图如图6.5所示
10、。从图6.5中可以看到,左边的信号与系统总线相接,而右边是与外设相连接的3个口。为了控制方便,将8255的3个口分成A、B两组。其中A组包括A口的8条线PA0PA7和C口的高4位PC4PC7;B组包括B口的8条线PB0PB7和C口的低4位PC0PC3。A组和B组的具体工作方式由软件编程规定。第6章常用接口芯片及应用图6.5 8255的内部结构框图 第6章常用接口芯片及应用6.2.2 8255的工作方式的工作方式1工作方式工作方式0工作方式0又称为基本输入输出方式。在此方式下,8255的三个接口(A、B、C口)24条线全部规定为数据的输入输出线。A口的8条线(PA0PA7)、B口的8条线(PB0
11、PB7)、C口的高4位(PC4PC7)和C口的低4位(PC0PC3)可用程序分别规定它们的输入输出方向,即可以分别规定它们哪个作为输入,哪个作为输出。由于A口、B口、C口高4位和C口的低4位共有四部分,可以分别指定它们的输入输出方向,因此它们的输入输出共有16种不同的组合。第6章常用接口芯片及应用在方式0下,A口、B口和C口输出均有锁存能力,即只要向这些输出口写入数据,则数据将一直维持到写入新的数据为止。但在方式0下,这三个口输入全无锁存能力,也就是说外设的数据要一直加在这些接口上,必须保持到被CPU读走。在方式0下,可以对C口实现按位操作。其详细情况后面再予以说明。由于方式0使用十分简单,可
12、满足无条件传送和查询方式传送的需要,因此这种工作方式应用特别广泛。第6章常用接口芯片及应用2工作方式工作方式1工作方式1又称为选通输入输出方式。只有A口和B口能工作在此方式之下,而且还必须使用C口的某些引线来实现数据传送所需要的握手信号和中断请求输出。通常该方式是以中断方式工作的,这并不是说该方式不能进行查询工作,而查询方式用方式0更加方便,不必要用方式1。第6章常用接口芯片及应用在工作方式1下,A口和B口均可分别作为输入接口,也可以作为输出接口,且由软件编程来指定。在此工作方式下,A口和B口的输出、输入均有锁存能力。为了说明问题方便,下面分别以A口、B口均为输出或为输入加以讨论。实际工作时,
13、则可随意指定。1)方式1下A口、B口均为输出当在方式1下,A口和B口均工作在输出状态时,要利用C口的6条线作为控制和状态信号线来实现。其定义如图6.6所示。第6章常用接口芯片及应用图6.6 方式1下A口、B口均为输出的信号定义(a)A口输出;(b)B口输出第6章常用接口芯片及应用为了使A口或B口工作于方式1下,必须利用C口的一些线来实现。如图6.6所示,在方式1下用A口或B口输出时,所用到的C口线是固定不变的,A口使用PC3、PC6和PC7,而B口用PC0、PC1和PC2。C口提供的信号功能如下:(1)为输出缓冲器满信号,低电平有效。利用该信号告诉外设,在规定的口上已由CPU输出一个有效数据,
14、外设可从此接口获取此数据。OBF第6章常用接口芯片及应用(2)为外设响应信号,低电平有效。该信号用来通知接口,外设已将数据接收,并使=1。(3)INTR为中断请求信号,高电平有效。当外设收到一个数据后,由此信号通知CPU,刚才的输出数据已经被接收,可以再输出下一个数据。(4)INTE为中断允许状态。由图6.6可以看到,A口和B口的INTR均受INTE控制。只有当INTE为高电平时,才有可能产生有效的INTR。ACKOBF第6章常用接口芯片及应用A口的INTE A由PC6来控制。用下面提到的C口按位操作可对PC6置位或复位,用以对中断请求INTR A进行控制。同理,B口的INTE B用PC2的按
15、位操作来进行控制。在方式1下,某口的输出过程若利用中断方式进行,则该过程从CPU响应中断开始。进入中断服务程序,CPU向接口写数据,将数据锁存于接口之中。当数据锁存并由信号线输出,8255就去掉INTR信号并使有效。有效的通知外设接收数据。一旦外设将数据接收,就送出一个有效的脉冲,该脉冲使无效(高电平)。同时,产生一图6.7 方式1下的数据输出时序个新的中断请求,请求CPU向外设输出下一个数据。上述过程可用图6.7所示的简单时序图进一步说明。OBFOBFIOWACKOBF第6章常用接口芯片及应用在这里提醒读者注意,当两个口同时为方式1输出时,使用C口的6条线。剩下的两条线还可以用程序指定它们的
16、数据传送方向是输入还是输出,而且也可以以位操作方式对它们进行置位或复位。当一个口工作在方式1时,只用去C口3条线,剩下的5条线也可按照上面所说的方式工作。第6章常用接口芯片及应用图6.7 方式1下的数据输出时序第6章常用接口芯片及应用2)方式1下A口、B口均为输入与方式1下两个口均为输出类似,为实现选通输入,则同样要利用C口的信号线。其定义如图6.8所示。第6章常用接口芯片及应用图6.8 方式1下A口、B口均为输入的信号定义(a)A口输入;(b)B口输入第6章常用接口芯片及应用在两个口均为输入时所用到的控制信号的定义如下:(1)为低电平有效的输入选通信号。它由外设提供,外设利用该信号可将其数据
17、锁存于8255口的输入锁存器中。(2)IBF为高电平有效的输入缓冲器满信号。当它有效时,表示已有一个有效的外设数据锁存于8255口的锁存器中。可用此信号通知外设,它的数据已锁存于接口中,尚未被CPU读走,暂不能向接口输入数据。第6章常用接口芯片及应用(3)INTR为中断请求信号,高电平有效。对于A口、B口可利用位操作命令分别使PC4=1或PC2=1,此时若IBF和均为高电平时,可使INTR有效,向CPU提出中断请求。也就是说,当外设将数据锁存于接口之中,且又允许中断请求发生时,就会产生中断请求。(4)INTE为中断允许状态。见图6.8,在方式1下输入数据时,INTR同样受中断允许状态INTE的
18、控制。A口的INTE A是由PC4控制的,当它为1时允许中断;当它为0时禁止中断。B口的INTE B是由PC2控制的。利用C口的按位操作即可实现这样的控制。第6章常用接口芯片及应用方式1下的数据输入过程如下所述。当外设有数据需要输入时,外设将数据送到8255口上,并利用输出脉冲将数据锁存于8255内部,同时,产生INTR信号并使IBF有效。有效的IBF通知外设,数据产生已锁存而中断请求要求CPU从8255的口上读取数据。CPU响应中断,读取数据后使IBF和INTR变为无效。上述过程可用图6.9的简单时序图进一步说明。STB第6章常用接口芯片及应用图6.9 方式1下的数据输入时序第6章常用接口芯
19、片及应用在方式1下,8255的A口和B口可以均为输入或输出;也可以一个为输入,另一个为输出;还可以一个工作于方式1,而另一个工作于方式0。这种灵活的工作特点是由其可编程的功能来实现的。3工作方式工作方式2工作方式2又称为双向输入输出方式,这种工作方式只有8255的A口才有。在A口工作于双向输入输出方式时,要利用C口的5条线才能实现。此时,B口只能工作在方式0或方式1,而C口剩下的3条线可作为输入输出线使用或用做B口方式1之下的控制线。A口工作于方式2之下时,各信号的定义如图6.10所示。图中未画B口和C口的其他引线。第6章常用接口芯片及应用图6.10 方式2下的信号定义第6章常用接口芯片及应用
20、当A口工作在方式2时,其控制信号、及INTR与前面的叙述是一样的,所不同的主要是:(1)因为在方式2之下,A口既作为输出又作为输入,所以只有当有效时,才能打开A口输出数据三态门,使数据由PA0PA7输出;当无效时,A口的输出数据三态门呈高阻状态。OBFACKSTB第6章常用接口芯片及应用(2)工作在此方式时,A口输入、输出均具备锁存数据的能力。CPU写A口时,数据锁存于A口,外设的脉冲可将输入数据锁存于A口。(3)在此方式下,A口的输入或输出均可产生中断。中断信号的输出同时还受到中断允许状态INTE1和INTE2的控制。INTE1和INTE2的状态分别利用PC6和PC4按位操作来指定。当它们置
21、位时,允许中断;而当它们复位时,禁止中断。STB第6章常用接口芯片及应用A口方式2的工作过程简述如下。A口工作在方式2时,可以认为A口是工作在前面所描述的方式1的输入和输出相结合而分时工作,其工作过程和方式1的输入和输出过程十分相似。在方式2之下,A口的PA0PA7这8条数据线既要向外设输出数据,又要从外设输入数据。因此,PA0PA7是双向工作的。这就必须仔细进行控制,以防止总线竞争发生。A口工作在方式2下的时序图如图6.11所示。第6章常用接口芯片及应用图6.11 方式2下的工作时序第6章常用接口芯片及应用在图6.11中,输入或输出的顺序是任意的。但应发生在有效之前,也就是先有CPU向A口写
22、数据,再有外设利用从A口取数据。同样,应发生在之前,以保证外设先利用将数据锁存于A口之内,再由CPU从A口读(有效)取数据。一旦数据由锁存,外设即可撤消其输入数据,以便保证PA0PA7的双向数据传送的实现。IOWACKACKSTBIORIORSTBSTB第6章常用接口芯片及应用6.2.3 控制字及状态字控制字及状态字 前面已经叙述了可编程并行接口8255的工作方式。可以看到,8255有很强的功能,能够工作在各种工作方式下,在应用过程中,可以利用软件编程来指定8255的工作方式。也就是说,只要将不同的控制字装入芯片中的控制寄存器,即可确定8255的工作方式。第6章常用接口芯片及应用1控制字控制字
23、8255的控制字由8位二进制数构成,各位的控制功能如图6.12所示。当控制字bit7=1时,控制字的bit6bit3这4位用来控制A组,即A口的8位和C口的高4位,而控制字的低3位bit2bit0用来控制B组,包括B口的8位和C口的低4位。当控制字的bit7=0时,指定该控制字仅对C口进行位操作按位置位或复位操作。对C口按位置/复位操作的控制字格式如图6.13所示。如前所叙,在必要时,可利用C口的按位置/复位控制字来使C口的某一位输出0或1。第6章常用接口芯片及应用图6.12 8255的控制字格式第6章常用接口芯片及应用图6.13 C口的按位操作控制字第6章常用接口芯片及应用2状态字状态字当8
24、255的A口、B口工作在方式1或A口工作在方式2时,通过读C口的状态,可以检测A口和B口的状态。当8255的A口和B口均工作在方式1的输入时,由C口读的8位数据各位的意义如图6.14所示。当8255的A口和B口均工作在方式1的输出时,由C口读出的状态字各位的意义如图6.15所示。当8255的A口工作于方式2时,由C口读入的状态字如图6.16所示。第6章常用接口芯片及应用图6.14 A、B口均为方式1输入时的状态字 第6章常用接口芯片及应用 图6.15 A、B口均为方式1输出时的状态字 第6章常用接口芯片及应用图6.16中状态字的D0D2由B口的工作方式来决定。当为方式1输入时,其定义同图6.1
25、4的D0D2。当工作在方式1输出时,与图6.15所定义的D0D2相同。另外需要说明的是,图6.14和图 6.15分别表示在方式1之下,A口、B口同为输入或同为输出的情况。若在此方式下,A口、B口各为输入或输出时,状态字为上述两状态字的组合。第6章常用接口芯片及应用图6.16 A口工作在方式2输入时的状态字第6章常用接口芯片及应用6.2.4 8255的寻址及连接的寻址及连接8255占外设编址的4个地址,即A口、B口、C口和控制寄存器各占一个外设接口地址。对同一个地址分别可以进行读写操作。例如,读A口可将A口的数据读出;写A口可将CPU的数据写入A口并输出。利用8255的片选信号、A0、A1以及读
展开阅读全文