已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章 MCS-51 接口扩展技术 9.1 微型机I/O接口技术概述所谓I/O即计算机数据的输入输出。计算机系统的数据输入输出有两类数据传送操作:1. CPU和存储器之间的传送操作,如前章所述。2. CPU与外围设备接口的数据输入输出操作:由于外部设备情况复杂,例如速度的快慢差异很大,外围设备的数据信号格式各不相同,有电流信号、电压信号、数字信号、脉冲信号等。这些复杂的情况使CPU无法以固定的时序与外围设备同步协调工作,这就需要用一定的接口电路连接CPU与外围设备,使CPU与外围设备之间的数据输入输出能有效地进行。一. I/O接口电路的作用:1. 速度协调:CPU的速度很快,外围设备的速度较慢。输入:当外围设备数据准备好后,CPU再执行输入操作,由I/O接口电路提供准备好信号再输入。输出:需当外围设备准备好才能执行输出操作,由I/O接口电路将外围设备的准备状态传送给CPU。I/O接口电路充当了协调CPU与外围设备速度差异的角色。2. 输出接口电路应具有锁存功能:CPU向外输出数据是通过P0口数据通道输出的,P0口是分时传送低8位地址和数据信息的复用口,数据在数据总线上停留的时间很短,因此输出接口应将该输出数据锁存起来,等待这一数据被外围设备接收。3. 输入接口电路应具备三态缓冲功能:外围设备向CPU输入数据仍需通过P0口数据通道,在该数据通道上挂着多个数据源,除了多种输入接口外,所有存储器的数据线也与P0口数据通道相连,CPU的一次输入操作只允许一个数据源的数据线与数据通道相连,其余数据源的数据线必须以高阻与数据通道隔离。 所谓三态即指高电平、低电平、高阻三种状态。4. 数据转换:CPU传送的信号必须是数字信号,并且是并行信号,外围设备的信号与此不符则需通过接口电路转换。例如模拟信号与数字信号、串行与并行之间的转换等。9.2 I/O接口的扩展一. 单片机I/O口的直接应用,用P1口直接输入输出单片机的P1口可直接作为8条输入输出线使用。 +5VP1.0P1.1P1.2P1.38031P1.4P1.5P1.6P1.7地一 地 由上图,P1口的高4位是输入线,低4位作为输出线用其高电平可点亮接在该线的发光二极管,P1.7P1.4的开关依次对应P1.3P1.0的灯,哪个开关合上,则其对应的灯点亮。程序如下: ORG 0000HMAIN:MOV P1 , #0F0H ;置P1口高4位为输入,灭4个灯MOV A , P1 ;输入开关状态,合上者输入为0CPL AANL A , #0F0H ;求反后切取高4位SWAP A ;移入低4位MOV P1 , A ;点亮对应的发光二极管LJMP MAINEND二. 用TTL芯片扩展简单的I/O口采用TTL电路或CMOS电路的锁存器、三态门等通过P0口常可构成各类简单的输入输出接口,它电路简单、成本低、配置灵活方便。1. 扩展简单的8位输出口扩展输出口选择芯片要点是必须具有锁存功能。这是因为输出的数据在数据线上保持的时间是很短暂的,必须锁存起来用以控制外围设备。 例如用两片74LS377扩展两个8位输出口:ALEP0.7P0.0WR8031.8D G1D 74LS3732Q1Q ECLK 1D 8D G 2# 74LS377 1Q 8QCLK 1D 8D G 1#74LS3771Q 8Q 8位输出 8位输出如图,74LS377是带有允许输出端的8D锁存器,它的控制逻辑为:当G = 0时,CLK的上升沿(电平由低变高)使数据锁存,即8Q输出与8D输入呈高阻隔开,8Q输出保持由8D输入的信息。 CPU的输出操作: 首先建立有效地址,使G = 0: 对于1#74LS377,G接在1Q,即A0上,输出地址只要A0 = 0即可使其 G = 0 ,因此其地址为FFFEH 同理,2#74LS377的地址为FFFDH 用MOVX写指令产生WR = 0的低电平有效信号,欲输出的数据从P0口数据线送出,从D端通向Q端,建立8位输出数据。当写指令周期结束时,WR变高产生上沿,CLK脚的上跳沿使Q与D隔开,数据锁存输出。输出软件如下:MOV DPTR , #0FFFEH ;建立有效地址,A0 = 0,即1#377 G = 0MOV A , #DATA1 :待输出数据送AMOVX DPTR , A ;产生WR = 0有效信号,数据DATA从P0口通过D送往Q输出。 当写周期结束时,WR变高,使CLK产先上跳沿,数据锁存输出。MOV DPTR , #0FFFDH ;建立有效地址,A1 = 0,即2#377 G = 0MOV A , #DATA2MOVX DPTR , A2. 扩展简单的8位输入口:输入接口芯片选择的要点是必须具有三态缓冲功能。即被选通的输入接口可与系统的数据总线接通输入数据,未被选通的输入接口应以高阻与数据线隔离。常用芯片是74LS244,三态门。如下例扩展8位输入口:1Q 1D 2#8Q 8D 74LS244 1C 2C1Q 1D 1#8Q 8D 74LS244 1C 2C P0.0 P0.7 P2.1 RD P2.2 或门当74LS244的控制逻辑为:当1C、2C为低电平时,D与Q接通,数据从P0口输入CPU。当1C、2C为高电平时,D与Q隔开,Q呈高阻状态,接在D端的外部信号被隔离。由上图,只有当有效地址P2.1 = 0,且同时执行一条MOVX读指令产生RD = 0时,或门的输出才会为0,亦即1C、2C才会为0,D与Q才可以接通,从1#244输入数据。由上图可知1#244的地址为FDFFH。2#244的地址位 FBFFH。输入软件如下:MOV DPTR , #0FDFFH ;P2.1 = 0建立1#有效地址MOVX A , DPTR ;读指令产生RD = 0低电平有效信号 或门输出为0,1C、2C为0 D通向Q输入数据 读周期结束后RD变高则使1C、2C为高电平,使D与Q隔开,呈高阻与数据线隔离。MOV DPTR , #0FBFFH ;P2.2 = 0建立2#有效地址MOVX A , DPTR 从2#244输入数据三. 扩展可编程并行接口82558255可扩展三个8位并行输入输出口,可编程设定各口为输入或输出。1.8255的内部结构如118页图7-1 说明其结构及引脚作用。 120页端口地址信号及操作2.8255的工作方式:方式0:基本输入输出方式,每个口的可被编程设定为输入或输出,输出时具有锁存功能,输入时为三态。方式1:选通输入输出方式,A、B口用于数据传送,C口作为与外设联络信号。方式2:双向传送方式,只有A口可以使用这种方式。只要求掌握方式0。3. 8255控制字方式控制字P123页列出了方式控制字各位的意义,注意D7位一定是1,它是方式控制字的特征位。例:方式控制字为9AH: 1 0 0 1 1 0 1 0 方式控制字 C口低4位输出特征位 B口输入 B口方式选择0方式 A口方式: C口高4位输入 00:方式0 A口输入 01:方式1 10:方式2 C口置/复位控制字 将一个置/复位控制字送入8255控制寄存器,即可将C口某一位置为1或0,而且不影响其它位的状态。 例如向控制口送入07H: 0 0 0 0 0 1 1 1C口置/复位 1表示置1,0表示清0控制字特征位 确定对C口中哪一位进行置/复位操作 000:PC0 001:PC1 依次类推 该控制字确定PC3置1。4. 8255与CPU的连接举例:RDWRA0A1CS8255D0D7RESET RD WR ALE P0.0 P0.78031 RESET A口 1D G 1Q 2Q8D 373 E 8Q B口 C上口 C下口各端口地址: P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 A口: 0 1 1 1 1 1 0 0 FF7CH B口: 0 1 1 1 1 1 0 1 FF7DH C口: 0 1 1 1 1 1 1 0 FF7EH控制口: 0 1 1 1 1 1 1 1 FF7FH上图中当无关地址送0时,A口、B口、C口、控制口的地址也可为0000H、0001H、0002H、0003H。注:8255内部不带有地址锁存器,上图中用373锁存地址。编程要点:MOV DPTR , #0FF7FH ;选控制口MOV A , #8AH ;方式控制字 1 0 0 0 1 0 1 0 MOVX A , DPTR ;方式控制字特征位 C口低4位出 A口方式0 B口输入 A口输出 B口方式0 C口高4位输入 MOV DPTR , #0FF7DHMOVX A , DPTR ;从B口 输入数据,并存入50H单元MOV 50H , AMOV DPTR , #0FF7CHMOV A , #0FFHMOVX DPTR , A ;从A口输出FFHMOV DPTR , #0FF7FH ;选控制口MOV A , #03HMOVX DPTR , A ;送C口置/复位控制字0 0 0 0 0 0 1 1C口置/复位控制字特征位 置1 PC.1 该控制字规定PC.1输出为1四. 扩展可编程并行接口81551. 8155内部结构:P133页图7-18 8155内部有两个8位并行I/O口,即A口、B口,一个6位并行I/O口,即C口。256字节数据存储器RAM一个14位定时器计数器2. 8155的引脚信号说明:P133页3. 8155的端口地址:P134页 表7-34. 8155的控制命令字:P135页5. 8155的状态字 P136页注意8155的控制命令字寄存器只写不读,状态字寄存器只读不写,它们共用一个地址。6. 8155的基本用法: 可扩展256字节片外RAMIO/M引脚低电平时,只能用作片外RAM扩充,其低8位地址为00HFFH,共256字节,对其读写时用MOVX指令。 作扩展I/O口使用IO/M引脚高电平时,可根据命令字的规定从A、B、C口输入输出,共有20条输入输出线, 扩充一个14位定时器计数器8155提供一个14位减1计数器,它的功能主要用于计数,从TIMER IN端输入计数脉冲,计数满时由TIMER OUT输出脉冲或方波。使用步骤:写入控制命令字的D7、D6位控制启停。写入计数长度:端口地址04H的8位为计数器的低8位端口地址05H的低6位为计数器的高6位,共14位。05H的高2位确定当计数器时减到0时的输出方式。P137页7. 8155与8031CPU的连接方法:AD0AD7ALEWRRDRESETCEIO/M8155P0.0P0.7ALEWRRDRESETP2.7P2.08031一小小一人小一一一8155片内带有地址锁存器,可在ALE的下降沿锁存地址,不必在外部另接锁存器。由上图得到8155各端口的地址为:P2.7 = 0 ,片选CE有效;P2.0 = 1,则为端口地址P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 命令状态口7F00H0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 PA口 7F01H0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 PB口 7F02H0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 PC口 7F03H0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 定时器低位7F04H0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 1 定时器高位 7F05HP2.7 = 0,片选CE = 0,且P2.0 = 0则为8155片内RAM地址:7E00H7EFFH 共256字节。8155的基本操作软件:I/O口及8155RAM的操作软件:MOV DPTR , #7F00H ;选命令状态口MOV A, #0C2H ;送命令字 1 1 0 0 0 0 1 0 MOVX DPTR , A ;A口输入、B口输出、C口输入MOV DPTR , #7F01H ;选A口MOVX A , DPTR ;从A口输入数据MOV DPTR ,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教部编八年级语文上册《一着惊海天》示范公开课教学课件
- 部编版六年级下册语文古诗与日积月累(注释、译文)
- 专利技术交易
- 4S店高级涂料装修服务
- 乡村振兴项目工作汇报
- PHP云人才系统的设计和实现
- 2023-2024学年全国小学三年级下语文人教版期中考卷(含答案解析)
- 二手房的购房合同2024年
- 2024年淮安客运从业资格证模拟考试
- 2024年海口客运上岗证条件
- 雨污水管合同模板
- 《篮球:行进间单手肩上投篮》教案(四篇)
- 2024-2025学年部编版初一上学期期中历史试卷与参考答案
- 2024年山东地区光明电力服务公司第二批招聘高频难、易错点500题模拟试题附带答案详解
- 2024山东高速集团限公司招聘367人高频难、易错点500题模拟试题附带答案详解
- DB34T 3730-2020 耕地损毁程度鉴定技术规范
- 北京市历年中考语文现代文之议论文阅读30篇(含答案)(2003-2023)
- 2024年新人教道德与法治一年级上册全册课件(新版教材)
- 请款单模板(范本)
- 2024高校大学《辅导员》招聘考试题库(含答案)
- 管道保温体积面积计算公式
评论
0/150
提交评论