第9章扩展输入输出ppt课件_第1页
第9章扩展输入输出ppt课件_第2页
第9章扩展输入输出ppt课件_第3页
第9章扩展输入输出ppt课件_第4页
第9章扩展输入输出ppt课件_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

1、第第9 9章章 MCS-51 MCS-51单片机单片机 的的I/OI/O扩展扩展12 第第9章章 目录目录9.1 I/O接口扩展概述接口扩展概述 9.1.1 扩展的扩展的I/O接口功能接口功能 9.1.2 I/O端口的编址端口的编址 9.1.3 I/O数据的传送方式数据的传送方式 9.1.4 I/O接口电路接口电路9.2 利用利用74LSTTL电路扩展并行电路扩展并行I/O口口9.3 用用MCS-51单片机的串行口扩展并行口单片机的串行口扩展并行口 9.3.1 用用74LS165扩展并行输入口扩展并行输入口 9.3.2 用用74LS164扩展并行输出口扩展并行输出口 内容概要内容概要MCS-5

2、1有有4个个I/O口口P0P3,真正用作,真正用作I/O口线的只有口线的只有P1口的口的8位位I/O口线和口线和P3口的某些位线。因而,大多需要口的某些位线。因而,大多需要外部外部I/O接口的扩展。接口的扩展。介绍介绍MCS-51与廉价的与廉价的74LSTTL芯片扩展并行芯片扩展并行I/O接口接口以及用以及用MCS-51串行口来扩展并行串行口来扩展并行I/O接口的设计。最后介接口的设计。最后介绍使用绍使用I/O口控制的声音报警接口。口控制的声音报警接口。9.1 I/O接口扩展概述接口扩展概述扩展扩展I/O接口与扩展存储器一样,都属于系统扩展的内接口与扩展存储器一样,都属于系统扩展的内容。扩展的

3、容。扩展的I/O接口应该具有哪些功能?接口应该具有哪些功能?9.1.1 扩展的扩展的I/O接口功能接口功能扩展的扩展的I/O接口电路主要应满足以下功能要求。接口电路主要应满足以下功能要求。1实现和不同外设的速度匹配实现和不同外设的速度匹配大多数外设的速度很慢,无法和大多数外设的速度很慢,无法和s量级的单片机速度量级的单片机速度相比。单片机在与外设间进行数据传送时,只有在确认外相比。单片机在与外设间进行数据传送时,只有在确认外设已为数据传送做好准备的前提下才能进行数据传送。外设已为数据传送做好准备的前提下才能进行数据传送。外设是否准备好,就需要设是否准备好,就需要I/O接口电路与外设之间传送状态

4、接口电路与外设之间传送状态信息,以实现单片机与外设之间的速度匹配。信息,以实现单片机与外设之间的速度匹配。42输出数据锁存输出数据锁存与外设比,单片机的工作速度快,数据在数据总线上保与外设比,单片机的工作速度快,数据在数据总线上保留的时间十分短暂,无法满足慢速外设的数据接收。所以留的时间十分短暂,无法满足慢速外设的数据接收。所以在扩展的在扩展的I/O接口电路中应有输出数据锁存器,以保证输接口电路中应有输出数据锁存器,以保证输出数据能为慢速的接收设备所接收。出数据能为慢速的接收设备所接收。3输入数据三态缓冲输入数据三态缓冲数据总线上可能数据总线上可能“挂有多个数据源,为使传送数据时挂有多个数据源

5、,为使传送数据时不发生冲突,只允许当前时刻正在接收数据的不发生冲突,只允许当前时刻正在接收数据的I/O接口使接口使用数据总线,其余的用数据总线,其余的I/O接口应处于隔离状态,为此要求接口应处于隔离状态,为此要求I/O接口电路能为数据输入提供三态缓冲功能。接口电路能为数据输入提供三态缓冲功能。59.1.2 I/O端口的编址端口的编址介绍介绍I/O端口编址之前,首先要弄清楚端口编址之前,首先要弄清楚I/O接口和接口和I/O端端口的概念。口的概念。I/O接口是单片机与外设间的连接电路的总称。接口是单片机与外设间的连接电路的总称。I/O端口简称端口简称I/O口是指口是指I/O接口电路中具有单元地接口

6、电路中具有单元地址的寄存器或缓冲器。一个址的寄存器或缓冲器。一个I/O接口芯片可以有多个接口芯片可以有多个I/O端端口,如数据口,命令口,状态口。当然,并不是所有的外口,如数据口,命令口,状态口。当然,并不是所有的外设都一定需要设都一定需要3种端口齐全的种端口齐全的I/O接口。接口。每个每个I/O接口中的端口都要有地址,以便接口中的端口都要有地址,以便MCS-51通过通过读写端口来和外设交换信息。常用的读写端口来和外设交换信息。常用的I/O端口编址有两种端口编址有两种方式,独立编址方式与统一编址方式。方式,独立编址方式与统一编址方式。61独立编址独立编址I/O端口地址空间和存储器地址空间分开编

7、址。优点是端口地址空间和存储器地址空间分开编址。优点是I/O地址空间和存储器地址空间相互独立,界限分明。但地址空间和存储器地址空间相互独立,界限分明。但需要设置一套专门的读写需要设置一套专门的读写I/O端口的指令和控制信号。端口的指令和控制信号。2统一编址统一编址把把I/O端口与数据存储器单元同等对待。端口与数据存储器单元同等对待。I/O端口和外部端口和外部数据存储器数据存储器RAM统一编址。因此外部数据存储器空间也统一编址。因此外部数据存储器空间也包括包括I/O端口在内。端口在内。优点是不需专门的优点是不需专门的I/O指令。缺点是需要把数据存储器指令。缺点是需要把数据存储器单元地址与单元地址

8、与I/O端口的地址划分清楚,避免数据冲突。端口的地址划分清楚,避免数据冲突。79.1.3 I/O数据的传送方式数据的传送方式为了实现和不同外设的速度匹配,必须根据不同外设选为了实现和不同外设的速度匹配,必须根据不同外设选择恰当的择恰当的I/O数据传送方式。数据传送方式。I/O数据传送方式有:同步传数据传送方式有:同步传送、异步传送和中断传送。送、异步传送和中断传送。1同步传送同步传送同步传送又称无条件传送。当外设速度和单片机的速度同步传送又称无条件传送。当外设速度和单片机的速度相比拟时,常采用同步传送方式,典型的同步传送是单片相比拟时,常采用同步传送方式,典型的同步传送是单片机和外部数据存储器

9、之间的数据传送。机和外部数据存储器之间的数据传送。2查询传送查询传送又称有条件传送也称异步式传送)。通过查询外设又称有条件传送也称异步式传送)。通过查询外设“准备好后,再进行数据传送。优点是通用性好,硬件准备好后,再进行数据传送。优点是通用性好,硬件连线和查询程序简单,但工作效率不高。连线和查询程序简单,但工作效率不高。83中断传送中断传送为了提高单片机对外设的工作效率,通常采用中断传送为了提高单片机对外设的工作效率,通常采用中断传送方式,来实现方式,来实现I/O数据的传送。单片机只有在外设准备好数据的传送。单片机只有在外设准备好后,才中断主程序的执行,从而进入与外设数据传送的中后,才中断主程

10、序的执行,从而进入与外设数据传送的中断服务子程序,进行数据传送。中断服务完成后又返回主断服务子程序,进行数据传送。中断服务完成后又返回主程序断点处继续执行。采用中断方式可大大提高工作效率。程序断点处继续执行。采用中断方式可大大提高工作效率。99.2 利用利用74LSTTL电路扩展并行电路扩展并行I/O口口在单片机应用中,有些场合需要降低成本、缩小体积,在单片机应用中,有些场合需要降低成本、缩小体积,这时采用这时采用TTL电路、电路、CMOS电路锁存器或三态门电路也可电路锁存器或三态门电路也可构成各种类型的简单输入构成各种类型的简单输入/输出口。输出口。如图如图9-20所示为一个利用所示为一个利

11、用74LS244和和74LS273芯片,芯片,将将P0口扩展成简单的输入口扩展成简单的输入/输出口的电路。输出口的电路。74LS244和和74LS273的工作受的工作受MCS-51的的P2.0、 、 3条控制线控制。条控制线控制。74LS244作为扩展输入口,作为扩展输入口,8个输个输入端分别接入端分别接8个按钮开关。个按钮开关。74LS273是是8D锁存器扩展输出锁存器扩展输出口,接口,接8个个LED发光二极管,以显示发光二极管,以显示8个按钮开关状态。个按钮开关状态。10RDWR图图9-20 74LSTTL I/O扩展举例扩展举例当某条输入口线的按钮开关按下时,该输入口线为低电平,读入单片

12、机后,其相应位为“0”,然后再将口线的状态经74LS273输出,某位低电平时二极管发光,从而显示出按下的按钮开关的位置。该电路的工作原理如下。当P2.0=0, =0( =1时,选中74LS244芯片,此时若无按钮开关按下,输入全为高电平。当某开关按下时则对应位输入为“0”,74LS244的输入端不全为“1”,其输入状态通过P0口数据线被读入MCS-51片内。12RDWR当P2.0 = 0, =1 ( = 0时,选中74LS273芯片,CPU通过P0口输出数据锁存到74LS273,74LS273的输出端低电平位对应的LED发光二极管点亮。总之,在图9-20中只要保证P2.0为“0”,其他地址位或

13、“0或“1即可。如地址用FEFFH无效位全为“1”),或用0000H无效位全为“0”)都可。13RDWR输入程序段:输入程序段:MOV DPTR,#0FEFFH;I/O地址地址DPTRMOVX A,DPTR ; 为低,为低,74LS244数据被读入数据被读入A中中输出程序段:输出程序段:MOV A,#data;数据;数据#dataAMOV DPTR,#0FEFFH;I/O地址地址#0FEFFHDPTRMOVXDPTR,A; 为低,数据经为低,数据经74LS273口输出口输出14RDWR【例【例9-9】编写程序把按钮开关状态通过图】编写程序把按钮开关状态通过图9-20的发的发光二极管显示出来。程

14、序如下:光二极管显示出来。程序如下:DDIS: MOV DPTR,#0FEFFH ;输入口地址;输入口地址DPTRLP:MOVX A,DPTR;按钮开关状态读入;按钮开关状态读入A中中 MOVX DPTR,A;A中数据送显示输出口中数据送显示输出口 SJMP LP ;反复连续执行;反复连续执行由程序可看出,对于扩展接口的输入由程序可看出,对于扩展接口的输入/输出就像从外部输出就像从外部RAM读读/写数据一样方便。图写数据一样方便。图9-20仅仅扩展了两片,如果仅仅扩展了两片,如果仍不够用,还可扩展多片仍不够用,还可扩展多片74LS244、74LS273之类的芯片。之类的芯片。但作为输入口时,一

15、定要求有三态功能,否则将影响总线但作为输入口时,一定要求有三态功能,否则将影响总线的正常工作。的正常工作。159.3 用用MCS-51单片机的串行口扩展并行口单片机的串行口扩展并行口串口的方式串口的方式0用于用于I/O扩展。方式扩展。方式0为同步移位寄存器工为同步移位寄存器工作方式,波特率为作方式,波特率为fosc/12。数据由。数据由RXD端端P3.0输入,输入,同步移位时钟由同步移位时钟由TXD端端P3.1输出。输出。9.3.1 用用74LS165扩展并行输入口扩展并行输入口图图9-21串口扩展两个串口扩展两个8位并行输入口。位并行输入口。74LS165是是8位位并行输入串行输出的寄存器。

16、当并行输入串行输出的寄存器。当74LS165的的S/ 端由高到端由高到低跳变,并行输入端的数据被置入寄存器;当低跳变,并行输入端的数据被置入寄存器;当S/ = 1,且时钟禁止端且时钟禁止端15脚为低时,允许脚为低时,允许TXDP3.1移位时移位时钟输入,在该脉冲作用下,数据由右向左方向移动。钟输入,在该脉冲作用下,数据由右向左方向移动。16LLTXD与所有与所有74LS165的的CP相连;相连;RXD与与74LS165的串的串行输出端行输出端QH相连;相连;P1.0与与 S/ 相连,控制相连,控制74LS165的串的串行移位或并行输入;行移位或并行输入;15脚接地,允许时钟输入。当扩展多脚接地

17、,允许时钟输入。当扩展多个个8位输入口时,相邻两芯片的首尾位输入口时,相邻两芯片的首尾QH与与SIN相连。相连。 图图9-21 利用利用74LS165扩展并行输入口扩展并行输入口17L【例【例9-10】从】从16位扩展口读入位扩展口读入5组数据每组组数据每组2B),把),把它们转存到内部它们转存到内部RAM 20H开始的单元。开始的单元。 MOV R7,#05H;设置读入组数;设置读入组数 MOV R0,#20H;设置内部;设置内部RAM数据区首数据区首址址START:CLR P1.0;并行置入数据,;并行置入数据,S/ =0 SETB P1.0;允许串行移位,;允许串行移位,S/ =1 MO

18、V R2,#02H;设每组字节数,;设每组字节数, 即即74LS165的个数的个数RXDATA:MOV SCON,#00010000H;设置串口方;设置串口方式式0,允许,允许;接收,启动接收过程;接收,启动接收过程18WAIT:JNB RI,WAIT;未接收完一帧,循环等待;未接收完一帧,循环等待 CLR RI;RI标志清标志清“0”,准备下次接收,准备下次接收 MOV A,SBUF;读入数据;读入数据 MOV R0,A;送至;送至RAM缓冲区缓冲区 INC R0;指向下一个地址;指向下一个地址 DJNZ R2,RXDATA;未读完一组数据,;未读完一组数据, 继续继续 DJNZ R7,START;5组数据未读完重新并行置入组数据未读完重新并行置入 ;对数据进行处理;对数据进行处理19串行接收过程采用查询等待的方式,如必要,可改中断方式。9.3.2 用74LS164扩展并行输出口图9-22为串口外接两片74LS1648位串入并出移位寄存器扩展两个8位并行输出口的接口电路。 图9-22 利用74LS164扩展并行输出口20当串口工作在方式0的发送,串行数据由P3.0RXD送出,移位时钟由P3.1TXD送出。注意,由于74LS164无并行输出控制端,在串行输入中,其输出端的状态会不断变化,故某些场合,在74LS164输出端应加

温馨提示

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

评论

0/150

提交评论