- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章 MCS-51扩展I/O接口的设计 8.1 I/O接口扩展概述 MCS-51的I/O (输入/输出)接口是MCS-51与外部设备(简称外设)交换信息的桥梁。 I/O扩展也属于系统扩展的一部分。虽然MCS-51已有4个8位并行I/O口,但是P0口和P2口用作16位地址总线和8位数据线, P3口是双功能口,用户真正用作I/O口线的只有P1口的8位I/O线和P3口的某些位线可作为输入/输出线使用。因此,在多数应用系统中,MCS-51单片机都需要外扩I/O接口电路。 8.1.1 I/O接口的功能 MCS-51扩展的I/O接口电路主要应满足以下功能要求: 1. 实现和不同外设的速度匹配 不同外设的工作速度差别很大,但大多数的外设的速度很慢,无法和μs量级的单片机速度相比。MCS-51和外设间的数据传送方式有同步、异步、中断三种。无论采用哪种数据传送方式来设计I/O接口电路,单片机只能在确认外设已为数据传送做好准备的前提下才能进行I/O操作。而要知道外设是否准备好,就需要I/O接口电路与外设之间传送状态信息,以实现单片机与外设之间的速度匹配。 2. 输出数据锁存 由于单片机的工作速度快,数据在数据总线上保留的时间十分短暂,无法满足慢速外设的数据接收。所以,在扩展的I/O接口电路中应具有数据锁存器,以保证输出数据能为接收设备所接收。可见数据输出锁存应成为I/O接口电路的一项重要功能。 3. 输入数据三态缓冲 输入设备向单片机输入数据时,要经过数据总线,但数据总线上面可能“挂”有多个数据源,为了传送数据时,不发生冲突,只允许当前时刻正在进行数据传送的数据源使用数据总线,其余的数据源应处于隔离状态,为此要求接口电路能为数据输入提供三态缓冲功能。 8.1.2 I/O端口的编址 I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。一个I/O接口芯片可以有多个I/O端口,传送数据的称为数据口,传送命令的称为命令口,传送状态的称为状态口。当然,并不是所有的外设都需要三种端口齐全的I/O接口。 I/O端口的编址实际上是给所有I/O接口中的端口编址,以便CPU通过端口地址和外设交换信息。常用的I/O端口编址有两种方式,一种是独立编址方式,另一种是统一编址方式。 1.独立编址方式 独立编址方式就是I/O地址空间和存储器地址空间分开编址。独立编址的优点是I/O地址空间和存储器地址空间相互独立,界限分明。但是,却需要设置一套专门的读写I/O的指令和控制信号。 2.统一编址方式 这种编址方式是把I/O端口的寄存器与数据存储器单元同等对待,统一进行编址。统一编址方式的优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作,简单、方便且功能强。 MCS-51单片机使用的是I/O和外部数据存储器RAM统一编址的方式,用户可以把外部64K字节的数据存储器RAM空间的一部分作为I/O接口的地址空间,每一接口芯片中的一个功能寄存器(端口)的地址就相当于一个RAM存储单元,CPU可以象访问外部存储器RAM那样访问I/O接口芯片,对其功能寄存器进行读、写操作。 8.1.3 I/O数据的几种传送方式 为了实现和不同的外设的速度匹配,I/O接口必须根据不同外设选择恰当的I/O数据传送方式。I/O数据传送的几种传送方式是:同步传送、异步传送和中断传送。 1.同步传送方式 同步传送又称为无条件传送。当外设速度和单片机的速度相比拟时,常常采用同步传送方式,最典型的同步传送就是单片机和外部数据存储器之间的数据传送。 2.查询传送方式 查询传送又称为有条件传送,也称异步式传送。单片机通过查询外设“准备好”后,再进行数据传送。异步传送的优点是通用性好,硬件连线和查询程序十分简单,但是效率不高。为了提高单片机对外设的工作效率,通常采用中断传送方式。 3.中断传送方式 中断传送方式是利用MCS-51本身的中断功能和I/O接口的中断功能来实现I/O数据的传送。单片机只有在外设准备好后,发出数据传送请求,才中断主程序,而进入与外设数据传送的中断服务程序,进行数据的传送。中断服务完成后又返回主程序继续执行。因此,采用中断方式可以大大提高单片机的工作效率。 8.1.4 I/O接口电路 MCS-51单片机是Intel公司的产品,而Intel公司的配套可编程I/O接口芯片的种类齐全,这就为MCS-51单片机扩展I/O接口提供了很大的方便。 Intel公司常用的外围I/O接口芯片有: (1)8255A:可编程的通用并行接口电路(3个8位I/O口)。 (2)8155H:可编程的IO/RAM扩展接口电路(2个8位I/O口,1个6位I/O口, 256个RAM
文档评论(0)