第9章 扩展输入输出PPT讲稿.ppt
《第9章 扩展输入输出PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第9章 扩展输入输出PPT讲稿.ppt(91页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第9章扩展输入输出1第1页,共91页,编辑于2022年,星期二2第第9章章目录目录9.1I/O接口扩展概述接口扩展概述9.1.1扩展的I/O接口功能9.1.2I/O端口的编址9.1.3I/O数据的传送方式9.1.4I/O接口电路9.2AT89S51扩展扩展I/O接口芯片接口芯片82C55的设计的设计9.2.182C55芯片简介9.2.2工作方式选择控制字及端口PC置位/复位控制字9.2.382C55的3种工作方式9.2.4AT89S51单片机与82C55的接口设计2第2页,共91页,编辑于2022年,星期二9.3AT89S51扩展扩展I/O接口芯片接口芯片81C55的设计的设计9.3.181C
2、55芯片介绍9.3.281C55的工作方式9.3.3AT89S51单片机与81C55的接口设计及软件编程9.4利用利用74LSTTL电路扩展并行电路扩展并行I/O口口9.5用用AT89S51单片机的串行口扩展并行口单片机的串行口扩展并行口9.5.1用74LS165扩展并行输入口9.5.2用74LS164扩展并行输出口9.6用用I/O口控制的声音报警接口口控制的声音报警接口9.6.1蜂鸣音报警接口9.6.2音乐报警接口3第3页,共91页,编辑于2022年,星期二内容概要内容概要AT89S51有4个I/O口P0P3,真正用作I/O口线的只有P1口口的8位I/O口线和P3P3口口的某些位线。因此,大
3、多需要大多需要外部I/O接口的扩展。介绍AT89S51与两种两种常用的可编程I/O接口芯片82C55和81C55的扩展接口设计。此外还介绍使用廉价的74LSTTL芯片芯片扩展并行I/O接口以及用AT89S51串行口串行口来扩展并行I/O接口的设计。最后介绍使用I/O口控制口控制的声音报警声音报警接口。4第4页,共91页,编辑于2022年,星期二9.1I/O接口扩展概述接口扩展概述扩展I/O接口与扩展存储器一样,都属于系统扩展系统扩展的内容。扩展的I/O接口应该具有哪些功能?9.1.1扩展的扩展的I/O接口功能接口功能扩展的I/O接口电路主要应满足以下功能要求。1实现和不同外设的速度匹配实现和不
4、同外设的速度匹配大多数外设大多数外设的速度很慢速度很慢,无法和s量级的单片机速度量级的单片机速度相比。单片机在与外设间进行数据传送时,只有在确认外设已为数据传送做好准备做好准备的前提下才能进行数据传送才能进行数据传送。外设是否准备好,就需要I/O接口电路与外设之间传送状态信息传送状态信息,以实现单片机与外设之间的速度匹配。55第5页,共91页,编辑于2022年,星期二2输出数据锁存输出数据锁存与外设比,单片机的工作速度快,与外设比,单片机的工作速度快,数据在数据总线上保留的时数据在数据总线上保留的时间十分短暂间十分短暂,无法满足慢速外设的数据接收。所以在扩展的,无法满足慢速外设的数据接收。所以
5、在扩展的I/O接口接口电路中电路中应有输出数据锁存器应有输出数据锁存器,以保证输出数据能,以保证输出数据能为慢速的接收为慢速的接收设备设备所接收。所接收。3输入数据三态缓冲输入数据三态缓冲数据总线数据总线上可能上可能“挂挂”有多个数据源有多个数据源,为使传送数据时,为使传送数据时不发生不发生冲突冲突,只允许当前时刻,只允许当前时刻正在接收数据的正在接收数据的I/O接口使用数据总线接口使用数据总线,其余的其余的I/O接口接口应处于隔离状态应处于隔离状态,为此要求,为此要求I/O接口电路能为数据输接口电路能为数据输入提供三态缓冲功能。入提供三态缓冲功能。6 6第6页,共91页,编辑于2022年,星
6、期二9.1.2I/O端口的编址端口的编址介绍I/O端口编址端口编址之前,首先要弄清楚I/O接口接口和I/O端口端口的概念。I/O接口接口是单片机与外设间的连接电路的总称。I/O端口端口(简称I/O口)是指I/O接口电路中具有单元地址的寄存器或缓冲器。一个I/O接口芯片可以有多个I/O端口,如数据口,命数据口,命令口,状态口令口,状态口。当然,并不是所有的外设都一定需要3种端口齐全的I/O接口。每个I/O接口中的端口接口中的端口都要有地址都要有地址,以便AT89S51通过读写端口来和外设交换信息和外设交换信息。常用的I/O端口编址端口编址有两种方式,独立编独立编址方式址方式与统一编址方式统一编址
7、方式。7 7第7页,共91页,编辑于2022年,星期二1独立编址独立编址I/O端口地址空间和存储器地址空间分开编址。优点是I/O地址空间和存储器地址空间相互独立,界限分明。但需要设置一套专门的读写I/O端口的指令和控制信号。2统一编址把I/O端口与数据存储器单元同等对待。I/O端口和外部数据存储器RAM统一编址统一编址。因此外部数据存储器空间也包括I/O端口在内。优点优点是不需专门的I/O指令。缺点缺点是需要把数据存储器单元地是需要把数据存储器单元地址与址与I/O端口的地址划分清楚端口的地址划分清楚,避免数据冲突。88第8页,共91页,编辑于2022年,星期二9.1.3I/O数据的传送方式数据
8、的传送方式为了实现和不同外设的速度匹配速度匹配,必须根据不同外设选择恰当的I/O数据传送方式数据传送方式。I/O数据传送方式有:同步传送、异步传送和中断传送。1同步传送同步传送同步传送又称无条件传送。当外设速度和单片机的速度相比拟时,常采用同步传送方式,典型的同步传送是单片机和外部数据单片机和外部数据存储器之间存储器之间的数据传送数据传送。2查询传送查询传送又称有条件传送(也称异步式传送)。通过查询外设“准备好”后,再进行数据传送。优点是通用性好,硬件连线和查询程序简单,但工作效率不高。9 9第9页,共91页,编辑于2022年,星期二3中断传送中断传送为了提高提高单片机对外设的工作效率工作效率
9、,通常采用中断传送方式,来实现I/O数据的传送。单片机只有在外设准备好后,才中断主程只有在外设准备好后,才中断主程序的执行序的执行,从而进入与外设数据传送的中断服务子程序,进行数据传送。中断服务完成后又返回主程序断点处继续执行。采用中断方式可大大提高工作效率提高工作效率。9.1.4I/O接口电路接口电路常用的外围I/O接口芯片:(1)82C55:可编程通用并行接口(3个8位I/O口)。1010第10页,共91页,编辑于2022年,星期二(2)81C55:可编程的IO/RAM扩展接口电路(2个8位I/O口,1个6位I/O口,256RAM单元,1个14位的减法计数器)。都可以和AT89S51直接连
10、接,接口逻辑简单。9.2AT89S51扩展扩展I/O接口芯片接口芯片82C55的设计的设计先介绍可编程并行I/O接口芯片82C55的应用特性应用特性,然后介绍AT89S51与82C55的接口电路接口电路以及软件设计软件设计。9.2.182C55芯片简介芯片简介Intel公司的可编程并行I/O接口芯片,3个个8位并行位并行I/O口,口,3种种工作方式,工作方式,单片机与多种外设连接时的中间接口电路。中间接口电路。引脚及内部结构如图图9-1和图图9-2所示所示。1111第11页,共91页,编辑于2022年,星期二12图图9-182C55的引脚图的引脚图图图9-282C55的内部结构的内部结构12第
11、12页,共91页,编辑于2022年,星期二1引脚说明引脚说明共40个引脚个引脚,引脚功能如下引脚功能如下:D7D0:三态双向数据线,与单片机的P0口连接,用来与单片机之间传送数据信息。:片选信号线,低有效,表示本芯片被选中。:读信号线,低有效,读82C55端口数据的控制信号。:写信号线,低电平有效,用来向82C55写入端口数据的控制信号。VCC:+5V电源。1313第13页,共91页,编辑于2022年,星期二PA7PA0:端口A输入/输出线。PB7PB0:端口B输入/输出线。PC7PC0:端口C输入/输出线。A1、A0:地址线,用来选择82C55内部的4个端口。RESET:复位引脚,高电平有效
12、。2内部结构内部结构如图图9-2所示所示,3个并行数据输入个并行数据输入/输出端口输出端口,两种工作方式两种工作方式的控制电路,一个读/写控制逻辑电路和一个8位数据总线缓冲器。各部件的功能如下:1414第14页,共91页,编辑于2022年,星期二(1)端口)端口PA、PB、PC3个8位并行口PA、PB和PC,都可以选为输入/输出工作模式,功能和结构上有差异。PA口:口:一个8位数据输出锁存器和缓冲器输出锁存器和缓冲器;一个8位数据输入输入锁存锁存器。PB口:口:一个8位数据输出锁存器和缓冲器输出锁存器和缓冲器;一个8位数据输入缓输入缓冲器冲器。PC口:口:一个8位的输出锁存器输出锁存器;一个8
13、位数据输入缓冲器输入缓冲器。通常PA口、口、PB口口作为输入/输出口,PC口口既可作为输入/输出口,也可在软件控制下,分为两个4位的端口,作为端口PA、PB选通方式操作时的状态控制信号。1515第15页,共91页,编辑于2022年,星期二(2)A组和组和B组控制电路组控制电路是两组根据AT89S51写入的“命令字命令字”控制82C55工作方式的控制电路。A组组控制PA口和PC口的上半部上半部(PC7PC4);B组组控制PB口和PC口的下半部下半部(PC3PC0),并可用“命令字”来对端口PC的每一位实现按位置“1”或清“0”。(3)数据总线缓冲器)数据总线缓冲器数据总线缓冲器是一个三态双向8位
14、缓冲器,作为82C55与系统总线之间的接口,用来传送用来传送数据、指令、控制命令以及外部状态信息。1616第16页,共91页,编辑于2022年,星期二(4)读)读/写控制逻辑电路写控制逻辑电路接收接收AT89S51单片机发来单片机发来的控制信号控制信号、RESET、地址信号地址信号A1、A0等,然后根据控制信号的要求,端口数据被AT89S51单片机读出,或者将AT89S51单片机送来的数据写入端口。各端口工作状态与控制信号的关系见表表9-1。1717第17页,共91页,编辑于2022年,星期二1818第18页,共91页,编辑于2022年,星期二9.2.2工作方式选择控制字及端口工作方式选择控制
15、字及端口PC置位置位/复位控制字复位控制字可向向82C55控制寄存器写入两种控制寄存器写入两种不同的控制字不同的控制字。1工作方式选择控制字工作方式选择控制字82C55有3种种基本工作方式:(1)方式)方式0基本输入/输出;(2)方式)方式1选通输入/输出;(3)方式)方式2双向传送(仅PA口有此工作方式)。3种工作方式方式控制字来决定。格式格式如图图9-3所示所示。最高位D7=1,为本方式控制字的标志标志,以便与另一控制字相区别(最高位D7=0)。1919第19页,共91页,编辑于2022年,星期二20图图9-382C55的方式控制字格式的方式控制字格式20第20页,共91页,编辑于2022
16、年,星期二PCPC口分两部分口分两部分,随,随PAPA口口称为称为A A组组,随,随PBPB口口称为称为B B组组。其中。其中PAPA口口可可工作于方式工作于方式0 0、1 1和和2 2,而,而PBPB口口只能工作在只能工作在方式方式0 0和和1 1。【例例9-19-1】AT89S51AT89S51向向82C5582C55的控制字寄存器写入的控制字寄存器写入工作方式控工作方式控制字制字95H95H,根据,根据图图9-39-3,将,将82C5582C55编程设置为:编程设置为:PAPA口方式口方式0 0输入,输入,PBPB口方式口方式1 1输出,输出,PCPC口的上半部分(口的上半部分(PC7P
17、C7PC4PC4)输出,)输出,PCPC口的下半口的下半部分(部分(PC3PC3PC0PC0)输入。)输入。MOVMOVDPTRDPTR,#H#H;控制字寄存器端口地址;控制字寄存器端口地址;HH送送DPTR DPTR MOV MOV A A,#95H#95H;方式控制字方式控制字95H95H送送A AMOVXMOVXDPTRDPTR,A A;控制字控制字95H95H送控制字寄存器送控制字寄存器2121第21页,共91页,编辑于2022年,星期二2PC口按位置位口按位置位/复位控制字复位控制字为另一控制字。即PC口中任何一位,可用一个写入82C55控制口的置位置位/复位控制字复位控制字来对PC
18、口按位置置“1”或清“0”。用于位控位控。格式如图图9-4所示所示。【例例9-2】AT89S51向82C55的控制字寄存器写入工作方式控工作方式控制字制字07H,则PC3置置1;08H写入控制口,则PC4清清0。程序段如下:MOVDPTR,#H;控制寄存器端口地址;H送DPTRMOVA,#07H;方式控制字07H送A2222第22页,共91页,编辑于2022年,星期二图图9-4PC口按位置位口按位置位/复位控制字格式复位控制字格式23第23页,共91页,编辑于2022年,星期二MOVXDPTR,A;控制字07H送控制寄存器,把PC3置1MOVDPTR,#H;控制字寄存器端口地址送DPTRMOV
19、A,#08H;方式控制字08H送AMOVXDPTR,A;08H送控制字寄存器,PC4清02424第24页,共91页,编辑于2022年,星期二9.2.382C55的的3种工作方式种工作方式1方式方式0是基本输入基本输入/输出方式输出方式。T89S51可对82C55进行I/O数据的无无条件传送条件传送。例如,例如,AT89S51单片机从82C55的某一输入口读入一组开关状态,从82C55输出控制一组指示灯的亮、灭。并不需要任何条并不需要任何条件,件,外设I/O数据可在82C55的各端口得到锁存和缓冲。因此,方式方式0称为基本输入基本输入/输出方式输出方式。方式0下,3个端口都可以由软件设置为输入或
20、输出,不需要应答联络信号。方式0的基本功能基本功能如下:2525第25页,共91页,编辑于2022年,星期二(1)具有两个8位端口(PA、PB)和两个4位端口(PC的上半部分和下半部分)。(2)任何端口都可以设定为输入或输出,各端口的输入、输出共有16种组合。PA口、口、PB口和口和PC口口均可设定为均可设定为方式方式0,并可根据需要,向控制寄存器写入工作方式控制字,规定各端口为输入或输出方式。26第26页,共91页,编辑于2022年,星期二【例例9-3】假设82C55的控制字寄存器控制字寄存器端口地址为端口地址为FF7FH,令PA口和口和PC口口的高高4位位为方式0输出,PB口口和PC口口的
21、低低4位位为方式0输入,初始化程序:MOVDPTR,#0FF7FH;端口地址#0FF7F送DPTRMOVA,#83H;方式控制字83H送AMOVXDPTR,A;控制字83H送控制字寄存器2727第27页,共91页,编辑于2022年,星期二2 2方式方式1 1是一种采用应答联络应答联络的输入的输入/输出工作方式输出工作方式。PA口、PB口皆可设成这种工作方式。在方式1下,82C55的PA口和口和PB口口通常用于I/O数据的传送,PC口口用作PA口和PB口的应答联络信号线应答联络信号线,以实现采用中断方式来传送I/O数据。PC口的PC7PC0的应答联络线是规定好的应答联络线是规定好的,其各位分配如
22、图如图9-5和图图9-7所示,图中,标有I/O的各位仍可用作基本输入/输出,不作应答联络用。下介绍方式1输入/输出时的应答联络信号应答联络信号与工作原理工作原理。2828第28页,共91页,编辑于2022年,星期二(1)方式)方式1输入输入方式1输入应答联络信号如图图9-5所示所示。其中与IBF为一对一对应答联络信号。各应答联络信号应答联络信号的功能功能如下。n:是由输入外设输入外设发给82C55的选通输入信号选通输入信号,低有效。nIBF:输入缓冲器满,应答信号。82C55通知外设已收到外设发来的且已进入输入缓冲器的数据,高有效。nINTR:由82C55向AT89S51单片机发出的中断请求信
23、号,高有效。nINTEA:控制PA口是否允许中断口是否允许中断的控制信号,由PC4的置位/复位来控制。2929第29页,共91页,编辑于2022年,星期二nINTEB:控制PB口是否允许中断的控制信号,由PC2的置位/复位来控制。方式1输入如图图9-6所示所示。下面以PA口的方式1输入为例,介绍方式方式1输入的工作过程。输入的工作过程。当外设向82C55输入一个数据并送到PA7PA0时,外设自动在上向82C55发送一个低电平选通信号。82C55收到后,先把PA7PA0输入的数据存入存入PA口的输入数据缓冲/锁存器,然后使输出应答线IBF变为高,通知输入外设,PA口已收到它送来的数据。82C55
24、检测到由低电平变为高电平、IBFA(PC5)为“1”状态和中断允许INTEA(PC4)=1时,使3030第30页,共91页,编辑于2022年,星期二INTRA(PC3)变为高电平)变为高电平,向单片机发出中断请求。INTEA的状态可由用户通过指令对PC4的单一置位/复位控制字来控制。单片机响应中断后,进入中断服务子程序进入中断服务子程序来读取读取PA口的外设口的外设发来的输入数据发来的输入数据。当输入数据被单片机读走后,82C55撤销撤销INTRA上的中断请求上的中断请求,并使IBFA变低低,通知输入外设通知输入外设可传送下一个输入数据。3131第31页,共91页,编辑于2022年,星期二32
25、图图9-5方式方式1输入应答联络信号输入应答联络信号32第32页,共91页,编辑于2022年,星期二33图图9-6PA口方式口方式1输入工作过程示意图输入工作过程示意图33第33页,共91页,编辑于2022年,星期二(2)方式)方式1输出输出方式1输出时,应答联络信号如图图9-7所示所示。与与构成一对一对应答联络信号应答联络信号,应答联络信号功能如下。n:端口输出缓冲器满信号,低有效,它是82C55发给外设的联络信号,表示外设可以将数据取走。n:外设应答信号,低有效。表示外设已把82C55发出的数据取走。nINTR:中断请求信号,高有效。表示该数据已被外设取走,向单片机单片机发出中断请求,如果
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第9章 扩展输入输出PPT讲稿 扩展 输入输出 PPT 讲稿
限制150内