微机原理第十三章.ppt_第1页
微机原理第十三章.ppt_第2页
微机原理第十三章.ppt_第3页
微机原理第十三章.ppt_第4页
微机原理第十三章.ppt_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

第13章其它常用接口本章介绍微型计算机中常用的一些接口芯片及接口电路的设计方法 内容含 定时 计数器8253 数 模和模 数转换接口 人机交互设备及其接口三部分内容 13 1定时 计数器825313 1 18253定时 计数器概述8253芯片内具有3个独立的16位减法计数器 或称为计数通道 每个计数器性能如下 最高计数频率2 6MHZ 可编程设定为按二进制计数或BCD码计数 有6种工作方式 可编程确定工作在哪一种方式 1 8253的引脚8253的引脚如图13 1所示 8253为24脚双列直插式封装结构 其引脚按功能分为与CPU接口引脚和与外设接口引脚二类 分别如下 1 与CPU的接口引脚 D7 D0 三态双向数据线 与CPU数据总线直接相连 WR 写控制信号 输入 低电平有效 RD 读控制信号 输入 低电平有效 A1 A0 地址线 输入 用于端口选择 A1A0 11 选中控制寄存器端口 可以向8253送控制字 图13 18253引脚图 A1A0 00 01 10 分别选择计数器0 1 2 可以对它们读写计数值 CS 片选信号 输入 低电平有效 2 与外设的接口引脚 CLK0 2 计数器0 1 2的外部计数时钟输入端 GATE0 2 计数器0 1 2的门控信号输入端 门控信号用来禁止 允许或重新开始一个新计数过程 OUT0 2 计数器0 1 2的计数输出端 当定时 计数时间到时 该端输出标志信号 2 8253的内部结构8253的内部结构如图13 2所示 见下页 主要由以下几部分组成 数据总线缓冲器 读 写逻辑电路 控制字寄存器 计数器0 2 图13 28253的内部结构图13 1 28253的工作方式 1 方式0计数结束产生中断采用方式0时 计数器在减到0时使输出端OUT变为高电平 以向CPU发出中断申请 其工作波形如下图13 3所示 当写入控制字后 计数器的输出OUT变成低电平 若门控信号GATE为高电平 计数器开始减1计数并且维持OUT为低电平 当计数器减到0时 输出端OUT变成高电平 并且一直保持到重新装入初值或复位时为止 门控信号GATE可以暂停计数 当GATE 0时 计数停止 GATE恢复为高电平后 继续计数 所以 如果在计数过程中 有一段时间GATE变为低电平 那么 输出端OUT的低电平持续时间会因此而延长相应的长度 在计数过程中可以改变计数值 若是8位数 在写入新的计数值后立即按新值重新开始计数 若是16位数 写入第一个字节后计数停止 写入第二个字节后立即按新值重新计数 2 方式1可编程单稳态方式1可以输出一个宽度可控的负脉冲 当CPU写入控制字后 OUT即变为高电平 计数器并不开始计数 而是等到门控信号GATE上升沿到来后 并且在下一个时钟的下降沿才开始计数 并使输出OUT变为低 直到计数到0 输出OUT再变为高 图13 4为方式1的工作波形图 见下页 如果在输出保持低电平期间 写入一个新的计数值 不会影响原计数过程 只有当门控GATE上出现一个新的上升沿后 才使用新的计数值重新计数 如果一次计数尚未结束 GATE上又出现新的触发脉冲 则从新的触发脉冲之后的CLK下降沿开始重新计数 图13 4方式1的工作波形3 方式2分频器方式2的工作波形如图13 5所示 见下页 使用方式2能对输入信号CLK进行n分频 n为计数值 当CPU送出控制字后输出OUT将变高 在写入计数值后 若门控信号GATE 为高电平 计数器对输入时钟CLK进行计数 直至计数器减至1时 输出OUT变为低 经过一个时钟周期后输出OUT又变为高 计数器自动从初值开始重新计数 计数过程受门控信号GATE的控制 GATE为低电平时暂停计数 由低电平恢复为高电平后的第一个时钟下降沿从初值开始重新计数 在计数过程中改变初值 对正在进行的计数过程没有影响 但计数到1 OUT变低一个CLK周期后 计数器将按新的计数值重新开始计数 图13 5方式2的工作波形 4 方式3方波发生器采用方式3时 OUT端输出连续方波 若计数值N为偶数 则输出对称方波 前N 2个脉冲期间为高电平 后N 2个脉冲期间为低电平 若N为奇数 则前 N 1 2个脉冲期间为高电平 后 N 1 2个脉冲期间为低电平 除输出波形不同外 方式3的其它情况均同方式2 下图 13 6 为方式3的工作波形图 5 方式4软件触发选通脉冲当方式4写入控制字后 OUT输出即变为高电平 若门控信号GATE为高电平 写入计数值后即开始计数 相当于由软件触发计数过程 当计数到0时输出一个时钟周期的负脉冲 计数器停止计数 这种计数方式是一次性的 只有输入新的计数值才重新开始新的计数 计数期间 如果写入新的计数值 立即按新值重新计数 具体情况同方式0 当门控GATE为低电平时 计数停止 GATE为高电平时 从初值开始重新计数 下图 13 7 为方式4的工作波形图 6 方式5硬件触发选通脉冲该方式在写入方式控制字及计数初值后 输出OUT保持高电平 但并不开始计数 只有当门控信号GATE出现上升沿后才开始计数 相当于由硬件触发计数过程 当计数到0时OUT上输出一个CLK周期的负脉冲 然后计数器停止 计数过程在未结束之前GATE上重新出现上升沿时 使计数器从初值开始重新计数 图13 8为方式5的工作波形 下图 方式5的输出脉冲宽度在正常计数情况下 如果写入的计数初值为N 输出端OUT维持N个时钟周期的高电平 1个时钟周期的低电平 13 1 38253的控制字与编程1 工作方式控制字8253工作方式控制字的格式及含义如下图13 9所示 2 初始化编程8253使用前 必须首先对其进行初始化 初始化包括写入控制字和计数初值 顺序为 写入控制字 写入计数值低字节 写入计数值高字节编程示例 参课本 3 8253在PC XT中的应用PC XT中 使用了一片8253 其地址范围为40 43H 三个CLK的输入均为1 19MHz GATE0和GATE1接 5V电源 GATE2由8255的PB0控制 参见图10 10 三个计数通道的作用及BIOS中初始化程序分别为 1 计数器0 编程为方式3 每55ms向中断控制器的IRQ0引脚发送一次中断请求信号 这个信号用于CPU计时和磁盘驱动器马达的定时 2 计数器1 工作于方式2 OUT1输出接至DMA请求触发器的CP端 每隔15 12us请求一次DMA操作 进行动态RAM的刷新 3 计数器2用于产生方波驱动扬声器发声 13 2A D与D A接口13 2 1概述能够把模拟量转换为数字量的器件称为模数转换器 ADC 能够把数字量转换为模拟量的器件称为数模转换器 DAC D A与A D转换是计算机用于工业控制等领域的一项重要技术 其在控制系统中的作用如下图13 10所示 它主要由以下几个部件组成 13 2 2D A转换接口1 运算放大器的特点和基本电路运算放大器的基本符号及其通常用法如下图13 11所示 理想的运算放大器具有如下特点 1 开环放大倍数非常高 2 输入阻抗非常大 3 输出阻抗很小 2 D A转换器的工作原理D A转换器的作用是把二进制数字量转换成相应的模拟量 实现数 模 D A 转换的方法比较多 这里介绍其中的两种 1 权电阻DAC下图13 12是权电阻D A转换的典型电路 电路由权电阻 位切换开关 反馈电阻和运算放大器组成 权电阻DAC虽然简单 直观 但当输入的二进制位数比较 多时 各个权电阻的阻值相差太大 也难以保证制造精度 2 T型电阻网络DAC实际应用的D A转换器 普遍采用T型电阻网络 其结构如下图13 13所示 T型电阻网络整个系统的电阻仅由R和2R两种电阻组成 实现简单 应用广泛 3 D A转换器的性能参数 1 分辨率这个参数反映了D A转换器对模拟量的分辨能力 是最小输出电压 对应的输入数字量只有D0位为1 与最大输出电压 对应的输入数字量所有位全为1 之比 2 转换精度转换精度表明了模拟输出实际值与理想值之间的偏差 精度可分为绝对精度和相对精度 它通常用 零点几LSB 最低有效位 表示 或用满刻度的 百分之几表示 D A转换器的转换精度与D A转换器本身的芯片结构和外接电路的配置有关 外接运算放大器 参考电源等都可影响D A转换器的精度 3 建立时间建立时间是指从数字输入端发生变化开始 到输出模拟值稳定在额定值的 1 2LSB时所需的时间 它是表明D A转换速度的一个重要参数 4 D A转换器08321 特点 0832具有如下特点 1 分辨率为8位 2 转换精度 0 2 FSR 3 电流稳定时间1 s 4 可单 双缓冲数据输入或直接数据输入 5 单一电源供电 5 15V 6 低功耗 20mW 2 引脚DAC0832的引脚如图13 14所示 见下页 引脚功能如下 DI7 DI0 数据输入 CS 片选信号 低电平有效 ILE 数据寄存器允许 高电平有效 WR1 输入寄存器写选通信号 低电平有效 与同时有效时将输入数据装入输入寄存器 WR2 DAC寄存器写选通信号 低电平有效 WR2与XFER同时有效时将输入寄存器的数据装入DAC寄存器 XFER 数据传送信号 低电平有效 Iout1 输出电流1 与数字量的大小成正比 Iout2 输出电流2 与数字量的反码成正比 Rfb 反馈电阻输入引脚 反馈电阻在芯片内部 可与运算放大器的输出直接相连 下图13 140832引脚图 VREF 基准电源输入引脚 Vcc 电源输入引脚 电压范围为 5V 15V AGND 模拟地 DGND 数字地 3 内部结构DAC0832的内部结构如下图13 15所示 DAC0832由8位输入寄存器 8位DAC寄存器和8位D A变换器构成 由于有两个寄存器 可以进行两次缓冲操作 转换输出的结果为与输入数字量大小成正比的模拟电流信号 4 DAC0832的工作方式DAC0832在不同信号组合的控制之下可实现直通 单缓冲和双缓冲三种工作方式 1 直通方式 当ILE 1 CS 0 WR1 0 WR2 0 XFER 0时 有LE1 1和LE2 1 输入寄存器和DAC寄存器的输出均随输入的变化而变化 对CPU送来的数据不进行缓冲 而是直接送到DAC转换器进行转换 2 单缓冲方式 当WR2 0 XFER 0 ILE 1时 DAC寄存器为直通 CS WR1有效之后 输入寄存器也处于直通状态 但当WR1由低电平变为高电平时 会有LE1 0 此时输入数据被锁存到输入寄存器中 输入寄存器的输出不再随外部数据的变化而变化 这样就进行了一级缓冲 另一方面 也可以使输入寄存器为直通 而DAC寄存器为选通 也可以实现一级缓冲 这时的设置为 CS 0 WR1 0 ILE 1 片选信号及写操作负脉冲从WR2和XFER输入 3 双缓冲方式 使ILE 1 用CS WR1控制输入寄存器 WR2 XFER控制DAC寄存器 则进行两级缓冲 由于可以分别用两组信号对DAC的两级寄存器进行锁存控制 这种方式特别适合于多路字量需要同步转换的场合 当其中一路数字量锁存于DAC寄存器供D A转换器时行转换时 另一路数字量可以提前写到输入寄存器中暂存 5 D A转换器的接口对照图13 15和图13 13 会发现DAC0832内部只有图13 13中的T电阻网络和负反馈电阻Rf 但没有图13 13中的运算放大器 因而DAC0832是电流DAC 图13 16是使用了单缓冲方式的接口电路 见下页 相应程序 参见课本 图13 160832的连接使用13 2 3A D转换接口A D转换器是将模拟量转换为数字量的器件 它是模拟量与计算机之间的接口部件 A D转换的常用方法有逐次逼近法 跟踪计数法 双积分法和V F 电压 频率 变换法等 1 ADC工作原理 1 逐次逼近式ADC采用逐次逼近法的A D转换器是由一个比较器 D A转换器 缓冲寄存器 逐次逼近寄存器及控制逻辑电路组成 见下图13 17 逐次逼近式的A D转换器的主要特点是 1 转换速度较快 2 转换时间固定 不随输入信号的大小而变化 3 抗干扰能力较双积分型弱 2 双积分式ADC采用双积分法的A D转换器由电子开关 积分器 比较器 计数器 标准电压 时钟和控制逻辑等部件组成 如下图13 18所示 双积分型的A D转换器电路简单 抗干扰能力强 精度高 但是转换速度比较慢 通常为ms级 一般用于低频信号的测量 3 跟踪计数式ADC跟踪计数式A D转换器由可逆计数器 D A转换器 模拟信号比较器和控制逻辑组成 下图13 19展示了8位跟踪计数式ADC的逻辑结构 跟踪计数式A D转换器可以达到很高的精度 它的转换速度慢于相同频率工作的逐次逼近A D转换器 2 A D转换器的主要性能指标ADC主要有以下性能指标 1 分辨率分辨率表明了A D转换器能够分辨最小的模拟信号的能力 通常用位数来表示A D转换器的分辨率 对于一个n位的A D转换器来说 它能分辨最小量化信号的能力为2n位 所以它的分辨率为2n位 分辨率仅表明了A D转换器在理论上可以达到的精度 2 转换精度转换精度是A D转换器实际输出值和理想输出值的误差 可用绝对精度或相对精度来表示 绝对精度 绝对精度等于实际转换结果与理论转换结果之差 通常以数字量的最小有效位 LSB 的分数值来表示 例如 1LSB 1 2LSB 1 4LSB等 相对精度 相对精度是绝对精度与模拟电压满量程的百分比 转换精度包括量化误差和其它所有误差 值得注意的是 分辨率与精度是二个不同的概念 即使分辨率很高 也可能由于温度漂移 线性度等原因 而使其精度不够高 3 转换时间转换时间是指模拟信号输入启动转换到转换结束 输出达到最终值并稳定所经历的时间 3 A D转换芯片0809ADC0809的主要技术指标如下 分辨率 8位 转换方法 逐次逼近法 转换时间 100 s 输入模拟电压范围 8路模拟电压均为0 5V 电源电压 5V 1 引脚及内部结构ADC0809的引脚如图13 20所示 见下页 图13 20ADC0809引脚图引脚功能如下 IN0 IN7 8路模拟输入 由ADDA ADDB ADDC三位地址编码选择其中的一路 D7 D0 8位数字量输出结果 ADDA ADDB ADDC 通道地址选择信号 其中 ADDA为低位 ADDC为高位 ADDC ADDB ADDA的111 000对应IN7 IN0 VREF VREF 二个参考电压输入引脚 通常参考电压从VREF 端引入 而VREF 与模拟地AGND相连 当VREF 接 5V时 输入电压范围为0V 5V CLOCK 时钟输入信号 要求频率为10kHz 1 2MHz 典型值为640kHz START A D转换启动信号 ALE 地址锁存允许信号 ALE用来锁存通道地址选择信号ADDA ADDB ADDC EOC 转换结束指示 该引脚在转换开始及转换中间均为低电平 转换结束后 EOC 1 OE 允许输出信号 当OE 1时 打开0809内部的输出锁存器 把ADC的转换结果送往数据总线 GND ADC的数字接地端 0809的内部结构如下图13 21所示 2 转换过程及时序ADC0809的时序如图13 22所示 见下页 图13 22ADC0809的时序图ADC0809的一次转换分为以下几个阶段 在ALE信号的作用下 地址引脚ADDC ADDA上的信号被锁存 随后 由地址引脚选择的模拟信号被多路开关接通 进入ADC0809 在启动脉冲START的作用下 A D转换开始 转换完成后 ADC0809转换结束信号EOC由低电平变为高电平 该信号可以作为状态信号由CPU查询 也可以作为中断请求信号通知CPU一次A D转换已经完成 CPU在查询式I O程序或中断服务程序中执行读ADC0809数据端口的指令 该指令经地址译码电路产生高电平的OE有效信号 打开输出三态缓冲器 转换结果通过系统数据总线进入CPU 3 与CPU的连接方案ADC0809的接口设计需考虑的问题如下 ADDA ADDB ADDC三端可直接连接到CPU地址总线A0 A1 A2端 但此种方法占用的I O口地址多 每一个模拟输入端对应一个口地址 8个模拟输入端占用8个口地址 对于微机系统外设资源的占用太多 因而一般ADDA ADDB ADDC分别接在数据总线的D0 D1 D2端 通过数据线输出一个控制字作为模拟通道选择的控制信号 ALE信号为启动ADC0809选择开关的控制信号 该控制信号可以和启动转换信号START同时有效 图13 23是ADC0809和PC机系统总线的接线示意图 下图 相应程序 参见课本 4 采样保持电路采样 保持电路包括采样和保持两种状态 采样状态下电路输出跟随输入的模拟电压 保持状态下电路输出保持采样结束瞬间的模拟信号状态 基本的采样 保持电路如图13 24所示 下图 由状态控制开关 运算放大器A1 A2和保持电容C组成 13 3人机交互设备人机交互设备主要分两类 输入设备和输出设备 13 3 1键盘键盘中的电路由三部分构成 按键扫描电路用于发现按键位置 编码电路用于产生相应的按键代码 接口电路负责把代码送入计算机 键盘接口中的一个主要问题是按键的识别 主要的识别方法有行扫描法 行列反转法等 1 行扫描法如图13 25所示 见下页 键盘上的各键组合为一个二维矩阵形式 某一键所在的行列号即为此键的编码 判断某键是否闭合的方法为 首先向第0行输出低电平 其余各行输出高电平 然后读入所有列线的电平值 如果某列线为低电平 表示第0行和该列相交位置上的键被按下 如果列线全为高电平 说明第0行没有键按下 然后向第1行输出低电平 其余行输出高电平 如 如果读入的列线仍然全是高电平 说明第1行也无键按下 应继续检查第2行 依次类推 直到发现某一列变为低电平 即某键按下 则退出扫描 根据行号和列号识别闭合的是那一个键 输出相应键码 当键码以行号和列号表示时 这样的键码称为行列码或位置扫描码 也称为键盘扫描码 图13 25行扫描示意图 2 行列反转法行列反转法也是常用的识别闭合键的方法 其方法为 先向所有行线输出低电平 同时读入列线 如果有键按下 则该键所在的列线应为低电平 其余的列线为高电平 由此确定按键的列号 然后将行和列进行交换 向所有列线输出低电平 读行线 同样可确定按键的行号 有了行号和列号就可以确定按键的位置 图13 26所示 见下页 为8 8键键盘 使用8255A的PA口和PB口分别作为行线和列线的输入输出接口 首先设置PA口为输出 PB口为输入 向PA口输出低电平 读PB口 若PB口全为高电平 说明无键按下 若PB口中某一根线为低电平 如PB3 表示第3列有键按下 然后设置PA口为输入 PB口为输出 向PB口输出低电平 读PA口 同样可确定按键的行号 比如PA4为低电平 则说明按下的键在第4行 于是可以确定是第4行第3列上的键被按下 图13 26行列反转法3 行列扫描法行列扫描法是PC机键盘使用的主要键码识别方法 硬件结构与行扫描法类似 其工作原理如下 通过译码器向每一行依次输出低电平 其余各行为高电平 每扫描一行 读一次列线 如果列线全为高电平 说明该行没有键按下 如果某一列为低电平 说明有键按下 如此行号和列号都已确定 行扫描完成后 依次向每一列输出低电平 读行线 同样可确定行号和列号 将两次所得的行号和列号进行对比 如相同 则认为该键码正确无误 即获得该闭合键的行列扫描码 4 抖动和重键问题 参见课本 13 3 2LED显示器LED即发光二极管 常用的LED有单个LED显示管 数码管和点阵显示器等 一般七段数码管应用较多 因此主要介绍七段数码管及其接口 1 七段LED显示器的结构与原理常用七段显示器的结构如图13 27 a 所示 见下页 LED有两种接法 将各个发光二极管的阳极接在一起 称为 共阳极显示器 如图13 27 b 所示 或者将各个发光二极管的阴极连在一起 称为共阴极显示器 如图13 27 c 所示 图13 27七段LED显示器的结构与接法 2 LED显示器接口LED的驱动有动态和静态两种方式 所谓静态显示 就是指当前显示器显示某个字符时 该显示器相应的发光二极管恒定地导通或截止 直到送入新的显示码为止 静态显示时 较小的电流即可得到较高的亮度 但缺点是I O口利用效率低 一般适用于显示器位数较少的场合 当显示位数较多时 一般采用动态显示法 所谓动态显示是指接口电路对各个LED显示器轮流进行扫描 每隔一定时间点亮一次 此种情况下 显示器的亮度不仅与导通电流有关 还与点亮时间与断开时间有关 如扫描频率太低 显示器会有跳动现象 例13 3根据图13 28 见下页 所示的静态驱动电路编程循环显示字符 0 F 设LED为共阴极连接 端口地址30H 程序 参课本 13 3 3打印机接口打印机按其与CPU交互的方式 可分为并行打印机与串行打印机二类 图13 28静态驱动电路1 并行打印接口概述Centronic标准定义了打印机一侧的36根引脚信号 PC机的打印适配器提供了24根连接引脚 其连接关系如图13 29所示 见下页 主要信号含义列于表13 2中 见课本 图13 29PC机中打印适配器与打印机的连接 打印接口时序如图13 30所示 如下 当主机需要打印一个数据时 主机与打印机的交互过程如下 1 首先查询Busy信号 2

温馨提示

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

评论

0/150

提交评论