第八章--IO接口扩展设计及应用.ppt
《第八章--IO接口扩展设计及应用.ppt》由会员分享,可在线阅读,更多相关《第八章--IO接口扩展设计及应用.ppt(98页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、8.1 I/O扩展概述扩展概述 8.2 MCS-51单片机与可编程并行单片机与可编程并行I/OI/O芯片芯片8255A8255A的接口的接口8.3 MCS-51与可编程芯片与可编程芯片8155的接口的接口8.4 TTL芯片扩展简单的芯片扩展简单的I/O接口接口8.5 键盘键盘/显示器接口芯片显示器接口芯片8279教学目的和要求教学目的和要求 本章主要介绍本章主要介绍MCS-51MCS-51系列单片机接系列单片机接口电路、简单接口和可编程接口口电路、简单接口和可编程接口82558255、81558155、82798279的结构原理及应用。要求重的结构原理及应用。要求重点掌握点掌握MCS-51MC
2、S-51系统单片机接口电路、简系统单片机接口电路、简单电路和可编程接口单电路和可编程接口82558255、81558155内部结内部结构及应用方法。构及应用方法。I/O扩扩展展概概述述vI/O扩展概述扩展概述v在多数应用系统中,在多数应用系统中,MCS-51单片机都需要外扩输入输出单片机都需要外扩输入输出(I/O)接口芯片。接口芯片。vMCS-51单片机的外部数据存储器单片机的外部数据存储器RAM和和I/O是统一编址的,是统一编址的,用户可以把外部用户可以把外部64K字节的数据存储器字节的数据存储器RAM空间的一部分空间的一部分作为扩展作为扩展I/O接口的地址空间,每一个接口芯片中的一个功接口
3、的地址空间,每一个接口芯片中的一个功能寄存器口地址就相当于一个能寄存器口地址就相当于一个RAM存储单元,存储单元,CPU可以向可以向访问外部存储器访问外部存储器RAM那样访问外部接口芯片,对其功能寄那样访问外部接口芯片,对其功能寄存器进行读、写操作。存器进行读、写操作。I/O扩扩展展概概述述vIntel公司常用的外围接口芯片有:公司常用的外围接口芯片有:v8255:可编程的通用并行接口电路:可编程的通用并行接口电路(3个个8位位I/O口口)。v8155:可编程的:可编程的RAM/IO扩展接口电路扩展接口电路(256个个RAM字节单字节单元,元,2个个8位位I/O口,口,1个个6位位I/O口,口
4、,1个个14位的减法定时器位的减法定时器计数器计数器)。v8279:可编程键盘、显示接口。:可编程键盘、显示接口。v它们都可以和它们都可以和MCS-51单片机直接相接,且接口逻辑十分简单片机直接相接,且接口逻辑十分简单。另外单。另外74LS系列的系列的LSTTL电路也可以作为电路也可以作为MCS-51的扩的扩展展I/O口,如口,如74LS373、74LS377等。等。I/O扩扩展展概概述述v常用的常用的I/O编址有两种方式:独立编址方式和统编址有两种方式:独立编址方式和统一编址方式。一编址方式。v所谓独立编址,就是把所谓独立编址,就是把I/O和存储器分开进行编址,亦即各编各和存储器分开进行编址
5、,亦即各编各的地址。这样在计算机系统中就形成了两个独立的地址空间:存的地址。这样在计算机系统中就形成了两个独立的地址空间:存储器地址空间和储器地址空间和I/O地址空间。地址空间。因此在使用独立编址方式的计算机指令系统中,除存储器读写指因此在使用独立编址方式的计算机指令系统中,除存储器读写指令外,还有专门的令外,还有专门的I/O指令以进行数据输入输出操作。指令以进行数据输入输出操作。v统一编址就是把系统中的统一编址就是把系统中的I/O和存储器统一进行编址。在这种编和存储器统一进行编址。在这种编址方式中,把址方式中,把I/O接口中的寄存器(端口)与存储器中的存储单接口中的寄存器(端口)与存储器中的
6、存储单元同等对待。元同等对待。采用这种编址方式的计算机只有一个统一的地址空间,该地址空采用这种编址方式的计算机只有一个统一的地址空间,该地址空间既供存储器编址使用,也供间既供存储器编址使用,也供I/O编址使用。编址使用。I/O扩扩展展概概述述vMCS-51单片机使用统一编址方式。单片机使用统一编址方式。因此在接口因此在接口电路中的电路中的I/O编址也采用编址也采用16位地址,同存储单元位地址,同存储单元地址长度一样。对片外地址长度一样。对片外I/O的输入输出指令就是的输入输出指令就是访问访问RAM的指令。的指令。vMCS-51单片机进行扩展单片机进行扩展IO接口设计时,要注意以下几接口设计时,
7、要注意以下几个问题:个问题:(1)熟悉熟悉MCS-51本身的本身的POP3口特性及指令功能。口特性及指令功能。(2)分析清楚要扩展的接口芯片的功能、结构及能力。分析清楚要扩展的接口芯片的功能、结构及能力。(3)在进行硬件设计时要注意接口电平及驱动能力。在进行硬件设计时要注意接口电平及驱动能力。(4)设计驱动程序要注意,防止总线上的数据冲突。应根设计驱动程序要注意,防止总线上的数据冲突。应根据据 实际情况采用不同的数据传送控制方式实际情况采用不同的数据传送控制方式。8255A芯芯片片介介绍绍v8255A芯片介绍芯片介绍v8255A8255A是是IntelIntel公司生产的可编程输入输出接口芯公
8、司生产的可编程输入输出接口芯片,它具有片,它具有3 3个个8 8位的并行位的并行I/OI/O口,分别为口,分别为PAPA口、口、PBPB口和口和PCPC口,其中口,其中PCPC口又分为高口又分为高4 4位口(位口(PC7PC7 PC4PC4)和低和低4 4位口(位口(PC3 PC3 PC0 PC0),),它们都可以通它们都可以通过软件编程来改变过软件编程来改变I/OI/O口的工作方式。口的工作方式。8255A8255A可以可以与与MCS-51MCS-51单片机直接接口。单片机直接接口。8255A芯芯片片介介绍绍v8255A的引脚如图的引脚如图8-1所示。所示。8255A的结构框图如的结构框图如
9、图图8-2所示。所示。它由以下几个部分组成:它由以下几个部分组成:(1)数据端口数据端口A、B、CPA口:一个口:一个8位数据输出锁存器位数据输出锁存器和缓冲器;一个和缓冲器;一个8位数据输入锁存器。位数据输入锁存器。PB口:一个口:一个8位数据输出锁存器位数据输出锁存器和缓冲器;一个和缓冲器;一个8位数据输入缓冲器。位数据输入缓冲器。PC口:一个口:一个8位的输出锁存器;位的输出锁存器;一个一个8位数据输人缓冲器。位数据输人缓冲器。8255A芯芯片片介介绍绍v8255A的结构框图的结构框图8255A芯芯片片介介绍绍 (2)A组和组和B组控制电路组控制电路这是两组根据这是两组根据CPU写入的写
10、入的“命令字命令字”控制控制8255A工作方式工作方式的控制电路。的控制电路。A组控制组控制PA口和口和PC口的上半部(口的上半部(PC7-PC4););B组控制组控制PB口和口和PC口的下半部(口的下半部(PC3-PC0)。)。(3)双向三态数据缓冲器双向三态数据缓冲器 这是这是8255A和和CPU数据总线的接口,数据总线的接口,CPU和和8255A之间的之间的命令、数据和状态的传递都通过双向三态总线缓冲器传送命令、数据和状态的传递都通过双向三态总线缓冲器传送的,的,D7-D0接接CPU的数据总线。的数据总线。8255A芯芯片片介介绍绍(4)读写和控制逻辑读写和控制逻辑A0、A1、CS 为为
11、8255A的端口选择信号和片选信号,的端口选择信号和片选信号,RD、WR 为为8255A的读写控制信号,这些信号线分别和的读写控制信号,这些信号线分别和MCS-51的地址线和的地址线和读写信号线相连接,实现读写信号线相连接,实现CPU对对8255A的口选择和数据传送。的口选择和数据传送。CPU对对8255A的的A口、口、B口、口、C口和控制口的寻址如表口和控制口的寻址如表8-1所示。所示。(5)复位控制复位控制引脚引脚RESET为复位信号输入脚,高电平有效。复位有效时,它把为复位信号输入脚,高电平有效。复位有效时,它把控制寄存器清零和控制寄存器清零和 置所有端口置所有端口(A、B、C)为输入方
12、式。为输入方式。8255A芯芯片片介介绍绍v表表8-1 8255A端口选择表端口选择表操作操作CSA1A0RDWR功能功能输入输入00001A口口数据总线数据总线(读端口读端口A)输入输入00101B口口数据总线数据总线(读端口读端口B)输入输入01001C口口数据总线数据总线(读端口读端口C)输入输入01101状态寄存器状态寄存器数据总线数据总线输出输出00010数据总线数据总线A口口(写端口写端口A)输出输出00110数据总线数据总线B口口(写端口写端口B)输出输出01010数据总线数据总线C口口(写端口写端口C)输出输出01110数据总线数据总线控制寄存器控制寄存器禁止禁止1数据总线为高
13、阻态数据总线为高阻态3种种工工作作方方式式及及选选择择v8255A的的3种工作方式及选择种工作方式及选择v8255A有三种基本工作方式:有三种基本工作方式:方式方式0一基本输入输出;一基本输入输出;方式方式1一选通输入输出;一选通输入输出;方式方式2一双向传送一双向传送(仅仅PA口口)。v工作方式的选择由工作方式的选择由CPU输出的控制字决定。输出的控制字决定。1“方式方式”选择控制字选择控制字8255A的工作方式,它可由的工作方式,它可由CPU送出一个控制字到送出一个控制字到8255A的控制的控制字寄存器来选择。字寄存器来选择。这个控制字的格式如图这个控制字的格式如图8-3所示,可以分别选择
14、端口所示,可以分别选择端口A和端口和端口B的工作方式,的工作方式,端口端口C分成两部分,上半部分随端口分成两部分,上半部分随端口A,下半部随端口下半部随端口B。端口端口A有方式有方式0、1和和2三种,而端口三种,而端口B只能工作于方式只能工作于方式0和和1。最高位。最高位D7是是该控制字的标志位,其状态固定为该控制字的标志位,其状态固定为1,用于表明本字节是方式控制字。,用于表明本字节是方式控制字。3种种工工作作方方式式及及选选择择8255A8255A的的控控制制字字3种种工工作作方方式式及及选选择择v例例8-1:若对若对8255A作如下设置:作如下设置:A口方式口方式0输入,输入,B口方式口
15、方式1输出,输出,C口高位部分输出低位部分为输口高位部分输出低位部分为输入。设控制寄存器地址为入。设控制寄存器地址为0FFFBH。按各口的设置要求,工作方式控制字为按各口的设置要求,工作方式控制字为10010101B,即,即95H。则初始化程序段为:则初始化程序段为:MOV DPTR,#0FFFBHMOV A,#95HMOVX DPTR,A3种种工工作作方方式式及及选选择择2C口按位置位口按位置位/复位功能复位功能端口端口C的的8位中的任一位,可用一个写入位中的任一位,可用一个写入8255A的控制口的置位复的控制口的置位复位控制字来置位或复位。这个功能主要用于控制。控制字的格式位控制字来置位或
16、复位。这个功能主要用于控制。控制字的格式如图如图8-4所示。所示。D7是该控制字的标志,其状态固定为是该控制字的标志,其状态固定为0。v例例8-2:如果想把:如果想把8255A的的C口的口的PC1置置1,PC7复位,该如复位,该如何对何对8255A编程。将编程。将03H写入控制口,置写入控制口,置“1”PC1;0EH写写入控制口,清入控制口,清“0”PC7。设控制寄存器地址为设控制寄存器地址为0FFFBH。程序如下:程序如下:MOV DPTR,#0FFFBHMOV A,#03HMOVX DPTR,AMOV A,#0EH MOVX DPTR,A3种种工工作作方方式式及及选选择择3种种工工作作方方
17、式式及及选选择择3方式方式0的功能的功能两个两个8位端口位端口(A和和B)和两个和两个4位端口位端口(口口C)。任一个端口都可以作为输入或输出。任一个端口都可以作为输入或输出。输出是锁存的。输出是锁存的。输入是不锁存的。输入是不锁存的。在方式在方式0时,各个端口的输入、输出可有时,各个端口的输入、输出可有16种种不同的组合。不同的组合。在这种工作方式下,由于是无条件的传送,所以不需要状在这种工作方式下,由于是无条件的传送,所以不需要状态端口,三个端口都可作为数据端口。在态端口,三个端口都可作为数据端口。在MCS-51系统中,系统中,只要执行只要执行MOVX类指令,便可完成输入输出操作。类指令,
18、便可完成输入输出操作。3种种工工作作方方式式及及选选择择4、方式、方式1的功能的功能v(1)方式方式1的基本功能的基本功能用作一个或两个选通端口。用作一个或两个选通端口。每一个端口包含有:每一个端口包含有:8位数据端口;三条控制线位数据端口;三条控制线(是固定是固定指定的,不能用程序改变指定的,不能用程序改变);提供中断逻辑。;提供中断逻辑。任何一个端口都可以作为输入或输出。任何一个端口都可以作为输入或输出。若只有一个端口工作于方式若只有一个端口工作于方式1,余下的,余下的13位,可以工作在位,可以工作在方式方式0(由控制字决定由控制字决定)。若两个端口都工作于方式若两个端口都工作于方式1,端
19、口,端口C还留下两位,这两位还留下两位,这两位可以由程序指定作为输入或输出,也具有置位复位功能。可以由程序指定作为输入或输出,也具有置位复位功能。3种种工工作作方方式式及及选选择择v(2)方式方式1输入输入当任一端口工作于方式当任一端口工作于方式1输入时,其逻辑组态如图输入时,其逻辑组态如图85所示。所示。其各个控制信号的意义为:其各个控制信号的意义为:STB(Strobe):选通脉冲(输入),低电平有效。选通脉冲(输入),低电平有效。IBF(Input Buffer Full)输入缓冲器满信号(输出),输入缓冲器满信号(输出),高电平有效。这是一个高电平有效。这是一个8255A输出的状态信号
20、。输出的状态信号。INTR(Interrupt Request):中断请求信号(输出),高中断请求信号(输出),高电平有效。这是电平有效。这是8255A的的个输出信号,可用于作为向个输出信号,可用于作为向CPU的中断请求信号,以要求的中断请求信号,以要求CPU服务。服务。INTEA和和INTEB为中断使能信号;为中断使能信号;3种种工工作作方方式式及及选选择择方方式式1 1输输入入组组态态3种种工工作作方方式式及及选选择择v(3)方式方式1输出输出方式方式1输出时,其逻辑组态如图输出时,其逻辑组态如图8-6所示,主要的控制信号所示,主要的控制信号如下:如下:OBF(Output Buffer
21、Full):输出缓冲器满信号,低电平输出缓冲器满信号,低电平有效,这是有效,这是8255A输出给外设的一个控制信号。输出给外设的一个控制信号。ACK(Achowledge):低电平有效。这是一个外设的响应低电平有效。这是一个外设的响应信号,指示信号,指示CPU输出给输出给8255A的数据已经由外设接受。的数据已经由外设接受。INTR:中断请求信号,高电平有效。中断请求信号,高电平有效。INTEA:由:由PC6的置位复位控制。的置位复位控制。INTEB:由由PC2的置位复位控制。的置位复位控制。3种种工工作作方方式式及及选选择择方方式式1输输出出组组态态3种种工工作作方方式式及及选选择择5方式方
22、式2的功能的功能该工作方式的主要功能该工作方式的主要功能:方式方式2只用于端口只用于端口A,端口端口B无此种工作方式。无此种工作方式。一个一个8位的双向总线端口位的双向总线端口(端口端口A)和一个和一个5位控制端口位控制端口(端端 口口C)。输入和输出是锁存的。输入和输出是锁存的。5位控制端口用作端口位控制端口用作端口A的控制和状态信息。的控制和状态信息。3种种工工作作方方式式及及选选择择v8255A工作在方式工作在方式2时,其逻辑组态如图时,其逻辑组态如图87所示。各个信所示。各个信号的意义为:号的意义为:INTR(中断请求中断请求):高电平有效。在输入和输出方式时,:高电平有效。在输入和输
23、出方式时,都可用来作为向都可用来作为向CPU的中断请求信号。的中断请求信号。OBF(输出缓冲器满输出缓冲器满):低电平有效。它是对外设的一种:低电平有效。它是对外设的一种选通信号,表示选通信号,表示CPU已把数据输出至端口已把数据输出至端口A。ACK(响应信号响应信号):低电平有效。它启动端口:低电平有效。它启动端口A的三态输的三态输出缓冲器,送出数据;否则,输出缓冲器处在高阻状态。出缓冲器,送出数据;否则,输出缓冲器处在高阻状态。3种种工工作作方方式式及及选选择择INTEl(与输出缓冲器相关的中断屏蔽触发器与输出缓冲器相关的中断屏蔽触发器):由:由PC6的的置位复位控制。置位复位控制。STB
24、(选通输入选通输入):低电平有效。这是外设供给:低电平有效。这是外设供给8255A的选的选通信号,它把输人数据选通至通信号,它把输人数据选通至8255A的输人锁存器。的输人锁存器。IBF(输入缓冲器满输入缓冲器满):高电平有效。它是一个状态信息,:高电平有效。它是一个状态信息,指示数据已进入输入锁存器。指示数据已进入输入锁存器。INTE2(与输入缓冲器相关的中断屏蔽触发器与输入缓冲器相关的中断屏蔽触发器):由:由PG4的置位复位控制。的置位复位控制。3种种工工作作方方式式及及选选择择v接口应用举例接口应用举例v例例8-3:在:在8051单片机上扩展一片单片机上扩展一片8255A芯片,设端口芯片
25、,设端口A为为方式方式0输入,端口输入,端口B方式方式0输出,端口输出,端口C(上半部)上半部)PC7PC4输入,端口输入,端口C(下半部)下半部)PC3PC0输出。要求从输出。要求从A口口读入的数据从读入的数据从B口输出。试设计扩展接口电路,并给出初口输出。试设计扩展接口电路,并给出初始化程序。始化程序。完成上述功能的接口电路如图完成上述功能的接口电路如图8-8所示。所示。3种种工工作作方方式式及及选选择择v8255A的扩展接口图的扩展接口图3种种工工作作方方式式及及选选择择v根据题目要求,根据题目要求,8255A的控制字为的控制字为10011000B=98H(控制字的格式见图控制字的格式见
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 IO 接口 扩展 设计 应用
限制150内