




已阅读5页,还剩51页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章输入和输出 7 1并行I O口的概念7 2MCS 51内部并行I O口7 3MCS 51并行口的扩展 7 1并行I O口的概念 计算机为什么需要I O接口 I O接口的作用 1 实现与不同外设的速度匹配通常I O接口采用中断方式传送数据 提高CPU效率 2 改变数据传送方式CPU内部数据通常并行传送 部分外设是串行传送 3 改变信号的性质和电平将外设的信息 变成与CPU相容的格式 7 1 1I O端口的编址 首先清楚I O接口 Interface 和I O端口 Port 的概念 I O端口 简称I O口 指I O接口中具有端口地址的寄存器或缓冲器 CPU通过端口地址可以对端口中的信息进行读写 I O接口 是指CPU和外设间的I O接口芯片 一个外设通常需一个I O接口 一个I O接口芯片可以有多个I O端口 数据口 命令口和状态口 I O端口编址两种方式 独立编址与统一编址 1 独立编址方式 I O寄存器和存储器分开编址 处理速度快 不占用存储空间 但需专用的I O指令 2 统一编址方式 I O寄存器与数据存储器单元统一编址 指令丰富 空间大 寻址控制简单 但占用存储器空间 分析程序困难 MCS 51使用统一编址的方式 MCS 51单片机有片内I O口和扩展I O口 片内I O口寄存器在SFR中 使用片内数据存储器空间 扩展I O口使用片外数据存储器地址空间 输出指令 输入指令 片内寻址 MOVP1 AMOVA P1片外寻址 MOVX DPTR AMOVXA DPTRMOVX R0 AMOVXA R0 7 1 2I O数据的几种传送方式 为实现和不同的外设的速度匹配 I O接口必须根据不同外设选择恰当的I O数据传送方式 I O数据传送的几种传送方式是 1 程序传送2 中断传送3 直接存储器存取 DMA 传送 无条件输出 CPU与外部设备间的数据传送在程序控制下进行的一种方式 分为条件传送和无条件传送 1 程序传送 1 无条件传送方式外部设备总处于 准备好 状态 无需测试 随时可以传送数据 用于工作速度非常快和非常慢时 无条件输入 传送前 CPU读取外设的工作状态 确认外设已为输入输出做好准备 再进行数据传送 2 条件传送 查询传送 大多数时间计算机与外设并行工作 计算机不必因等待而浪费资源 当外设准备就绪 向CPU发出中断请求信号 CPU暂停当前程序 执行I O操作 之后仍继续被中断的工作 2 中断方式 中断方式传送示意图 DMA DirectMemoryAccess 用于计算机与高速外设进行大批量数据交换 由DMA控制器接管总线控制权 RAM与外设之间直接数据传输 不需CPU的介入 3 直接存储器存取方式 第七章输入和输出 7 1并行I O口的概念7 2MCS 51内部并行I O口7 3MCS 51并行口的扩展 51单片机内部有四个8位并行I O端口 P0口 分时提供低8位地址和作8位双向数据总线 P1口 通用I O口 P2口 分时提供高8位地址 P3口 多功能口 第一功能做通用I O口 多用于第二功能 7 2MCS 51内部并行I O口 P3口的第二功能状态 例 用4个发光二极管对应显示4个开关的开合状态 如P1 0合则P1 4亮 P1 1合则P1 5亮 LOOP MOVA P1CJNEA 0FFH LOOP1SJMPLOOPLOOP1 SWAPAMOVP1 AEND 内部I O口可以直接用于输入 输出 第七章输入和输出 7 1并行I O口的概念7 2MCS 51内部并行I O口7 3MCS 51并行口的扩展 I O接口是MCS 51与外设交换数字信息的桥梁 单片机真正用作I O口线的只有P1口的8位和部分P3口线 在多数应用系统中 MCS 51单片机都需要外扩I O接口电路 7 3MCS 51并行口的扩展 I O口扩展芯片主要有两种 不可编程接口芯片 TTL 缓冲器电路等 可编程接口芯片 8255A 8155等 7 3 1用TTL电路扩展并行I O口 采用TTL或CMOS电路锁存器 三态门作为I O口扩展芯片 是单片机应用系统中常用的方法 常用的TTL锁存器有 74LS273 74LS373等 常用的TTL三态门有 74LS244 单向 74LS245 双向 一般通过P0口扩展 1 总线扩展法 下图是利用74LS273和74LS244 将P0口扩展成简单的输入 输出口的电路 P0口为双向数据线 既能接收244的输入数据 又能将数据送给273输出 P2 0作为输入 输出控制信号 当P2 0 0 RD信号有效时 通过244输入按键数据 当P2 0 0 WR信号有效时 51单片机通过P0口输出数据到74LS273 端口地址的确定 51单片机扩展I O口与外部RAM统一编址 I O口当外部RAM单元对待 用相同的指令MOVX访问 自动产生控制信号 读 RD 写 WR 在系统地址空间分配上 外部RAM与外部I O口统一都在一个64KRAM空间中 一般RAM占低地址 I O口占高地址 地址分配 64K片外RAM 设扩展输入口和输出口的端口地址为FEFFH 实现功能 按下任一键 LED发光 程序段 MOVDPTR 0FEFFH I O地址 DPTRLOOP MOVXA DPTR 读数据MOVX DPTR A 写数据SJMPLOOP 2 串行口扩展并行口 以后讲 常用芯片是移位寄存器 如74LS164 74LS165等 图 利用74LS164扩展并行输出口 例 编写将内部RAM单元30H 31H的内容经串行口由74LS164并行输出子程序 START MOVR7 02H 设置要发送的字节个数MOVR0 30H 设置地址指针MOVSCON 00H 设置串行口为方式0 SEND MOVA R0MOVSBUF A 启动串行口发送 WAIT JNBTI WAIT 一帧数据未发完 循环等待CLRTIINCR0 取下一个数DJNZR7 SEND 未完 发完从子程序返回RET 可编程I O扩展 具有状态寄存和命令寄存的功能 通过软件编程方式 确定扩展芯片的工作方式 典型芯片 8255A 8155 7 3 28255A可编程并行I O口的扩展 并行接口芯片8255A8255A是Intel公司生产的通用可编程I O接口电路 采用 5V电源供电 具有40条引脚 MCS 51和8255A相连可为外设提供3个8位I O端口 允许采用同步 异步和中断方式传送数据 1 8255A的内部结构 图 8255A的内部结构图 8255A主要组成 三个端口A B CA B是数据口 C口既可作数据口 也可作控制口 C7 4控制A口 称A组 C3 0控制B口 称B组 A组控制和B组控制A组控制A口和C口高4位 B组控制B口和C口低4位读 写控制逻辑 CS RESET RD WR A1 A0数据总线缓冲器 数据线D7 D0 PA7 PA0 PB7 PB0 PC7 PC0 寻址线片选信号CSA1 A0组合选择A B C和控制寄存器 控制线 RD WR RESET电源和地线 5V GND 2 8255A的引脚 8255A端口选择及其功能 8255A有两个控制字 端口工作方式控制字和C口置位 复位控制字 用户可通过指令把两个控制字送到8255A的控制寄存器 A1A0 11 来设定8255A的工作模式和C口各位状态 两个控制字以D7位状态作为标志 D7 1 为端口工作方式控制字 D7 0 为C口置位 复位控制字 3 8255A的控制字和状态字 1 方式控制字 格式如下 图 8255A的方式控制字 举例 要求 A端口 方式1输入C端口上半部 输出 C口下半部 输入B端口 方式0输出方式控制字 10110001B或B1H初始化的程序段 MOVDPTR 0D003h 设控制端口为D003HMOVA 0B1h 方式控制字MOVX DPTR A 送到控制端口 2 C口置位 复位控制字 可对C口8位中的任一位置 1 或清 0 用于位控 格式如下 例 若8255A的控制字寄存器端口地址为70FBH 试写出令PC3先置 1 以及后清 0 的程序 程序 MOVDPTR 70FBH 命令口地址MOVA 07H PC3置1MOVX DPTR AMOVA 06H PC3清零MOVX DPTR A 3 状态字 补充 了解 8255A设定为方式1和2时 读C口就可以读取相应状态字 参照课本P163 P165 4 8255A的工作方式 方式0 基本输入输出方式 A B C口都可 适用于无条件传送和查询方式的接口电路方式1 选通输入输出方式 A B口 适用于查询和中断方式的接口电路方式2 双向选通传送方式 A口 适用于双向传送数据的外设适用于查询和中断方式的接口电路 5 8255A的初始化编程 初始化编程 1 方式0下 只需设置方式控制字 2 方式1和2下 方式控制字和C口置位 复位控制字都需要设置 工作编程 例 下图是8051扩展8255A与打印机接口的电路 8255A的片选线为P0 7 打印机与8051采用查询方式传送数据 打印机的状态信号输入给PC7 打印机忙时BUSY 1 打印机的数据输入采用选通控制 当STB上出现低电平时数据被打入 要求编写向打印机输出50个数据的程序 设8255A的A B C和控制寄存器端口地址分别为 FF7CH FF7DH FF7EH和FF7FH 图 8051扩展打印机接口8255A 程序段 MOVDPTR 0FF7FH 写控制字MOVA 88HMOVX DPTR AMOVR1 20H 数据区首地址送R1MOVR2 32H 数据长度送R2LOOP1 MOVDPTR 0FF7Eh C口地址LOOP2 MOVXA DPTR 读入C口信息JBACC 7 LOOP2 BUSY 1 MOVDPTR 0FF7CH 送A口地址MOVA R1 取数MOVX DPTR A 数据送A口INCR1MOVDPTR 0FF7Fh 送控制寄存器地址MOVA 00H 送C口复位控制字MOVX DPTR A 使PC0 0MOVA 01H 送C口置位位控制字MOVX DPTR A 使PC0 1 锁存数据 开始打印DJNZR2 LOOP1 本章总结 理解接口的基本概念 熟悉I O接口的数据传送方式 了解I O接口的扩展 理解8255A的基本特性 了解8255A的外部特性和内部结构 熟练掌握8255A控制字的含义和应用 熟悉8255A三种工作方式的特点 原理 应用等 了解内容 方式0 基本输入输出方式 A口 B口和C口都可设定为工作方式0 单片机可对8255A进行无条件传送 也可以对C口进行位操作 以C口某一状态 实现查询方式数据传送 比如从口线读入一组开关状态 向端口输出数字量 控制一组指示灯的亮 灭 例 设8255A的控制寄存器地址为FF7FH 请编写程序 令A口和C口的高4位为工作方式0 输出 B口和C口的低4位为工作方式0 输入 程序如下 MOVDPTR 0FF7FH 控制寄存器地址送DPTRMOVA 83H 工作方式字83H送AMOVX DPTR A 83H送控制寄存器 方式1 选通输入输出方式 A B口可独立设置成方式1 用于传送和其相连的外设的I O数据 C口提供联络信号 有固定对应关系的选通信号和应答信号 联络信号 STB 选通信号 低电平有效由外设提供的输入信号 当其有效时 将外设送来的8位数据送至8255A的输入缓冲器IBF 输入缓冲器满信号 高电平有效8255A输出的联络信号 当其有效时 表示已有数据在输入缓冲器INTR 中断请求信号 高电平有效8255A输出的信号 可用于向CPU提出中断请求 要求CPU读取外设数据 A口选通输入方式 方式1 数据选通信号8255A接收外设数据 送入输入缓冲器 输入缓冲器满信号表示A口已经接收数据 中断请求信号STB INTE IBF都为高电平时 有效 请求CPU接收数据 中断请求信号STB INTE IBF都为高电平时请求CPU接收数据 B口选通输入方式 方式1 数据选通信号8255A接收外设数据 送入输入缓冲器 输入缓冲器满信号表示B口已经接收数据 方式1输出引脚 A端口 外设响应信号表示外设已经接收到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年尘肺医师鉴定考试(职业性尘肺病及其他呼吸系统疾病)题库及答案北京
- 2025年职业病诊断医师资格考试(职业性尘肺病及其他呼吸系统疾病)练习题及答案
- 农发行甘孜藏族自治州康定市2025秋招面试典型题目及参考答案
- 磁选工适应性考核试卷及答案
- 输气工职业技能考核试卷及答案
- 半导体分立器件封装工知识考核试卷及答案
- 医师资格考试(实践技能)复习题库及答案(2025年亚)
- 2025年(职业性耳鼻喉口腔疾病)模拟题库及答案(惠州)
- 齿轨车司机三级安全教育(车间级)考核试卷及答案
- 梳理缝编非织造布制作工抗压考核试卷及答案
- 幼儿园红色小故事PPT:抗日小英雄王二小的故事
- 如何理解欧盟MDR临床评价要求
- 监理业务手册(范本)
- 2022年国家公务员考试申论真题及答案解析(地市级)
- 名师成长的路径与修炼(教师版)课件
- 案外人执行异议之诉课件
- T-CSCS 015-2021 钢结构深化设计制图标准-(高清版)
- 西方经济学导论全套课件
- “基础教育精品课”PPT课件模板
- 第8部分消防设施标识可视化
- 简约医院医疗工作汇报工作总结PPT模板
评论
0/150
提交评论