第8章输入输出接口.ppt

上传人:本田雅阁 文档编号:3134329 上传时间:2019-07-15 格式:PPT 页数:114 大小:817.02KB
返回 下载 相关 举报
第8章输入输出接口.ppt_第1页
第1页 / 共114页
第8章输入输出接口.ppt_第2页
第2页 / 共114页
第8章输入输出接口.ppt_第3页
第3页 / 共114页
第8章输入输出接口.ppt_第4页
第4页 / 共114页
第8章输入输出接口.ppt_第5页
第5页 / 共114页
点击查看更多>>
资源描述

《第8章输入输出接口.ppt》由会员分享,可在线阅读,更多相关《第8章输入输出接口.ppt(114页珍藏版)》请在三一文库上搜索。

1、1,第8章 输入输出接口,2,主要内容,基本输入输出接口的特点 简单接口芯片的应用 两种可编程数字接口芯片的应用 工业闭环控制系统概述 模拟量输入输出接口芯片的功能及应用,3,8.1 简单数字接口电路,掌握: 接口电路的分类及特点; 两类简单接口芯片的应用,4,一、接口电路的基本构成,CPU,数据,状态,控制,外设,I/O接口:,5,接口的基本构成,数据线,控制线,状态线,DB,CB,AB,数据输入寄存器 (or 三态门),数据输出寄存器 (锁存器),状态寄存器 (or 三态门),命令寄存器,译码 电路,控制 逻辑,6,接口的基本构成,数据输入/输出寄存器 暂存输入/输出的数据 命令寄存器 存

2、放控制命令,用来设定接口功能、工作参数和工作方式。 状态寄存器 保存外设当前状态,以供CPU读取。,7,外设接口,输入接口 输出接口,并行接口 串行接口,数字接口 模拟接口,8,输入输出接口的特点,输入接口: 要求对数据具有控制能力(常用三态门实现) 输出接口: 要求对数据具有锁存能力(常用锁存器实现),9,二、基本输入接口,三态门接口:高电平、低电平、高阻态,10,三态门的工作波形:,A0A15,IOR,译码输出,D0D7,开关状态,地址有效,11,74LS244接口,含8个三态门的集成电路芯片 不具备数据的保存能力 在外设具有数据保持能力时用来输入接口,P341图,12,三态门接口应用例,

3、利用三态门作为输入接口(接口地址380H)接到地址范围为70000H-71FFFH的EEPROM芯片的READY/BUSY端,当三态门输出高电平时,可向98C64A写入一个字节数据,输出低电平时则不能写入。试画芯片与系统的连接图,13,三态门接口应用例,D0D7,A0,A12,WE,OE,READY/BUSY,A0,A12,MEMW,MEMR,高位地址信号,D0D7,D0,380H,CE,译码,IOR,A0 A12,译码,14,锁存器接口,通常由D触发器构成; 特点: 具有对数据的锁存能力; 不具备对数据的控制能力,15,常用锁存器芯片,74LS273 8D触发器,不具备数据的控制能力 74L

4、S374 含有8个带有三态输出的8D触发器,具有对数据的控制能力,P343图,例,16,锁存器芯片74LS374,D0D7,Q0,Q7,. . .,OE,CP,译码器,D0D7,Q0,Q7,. . .,OE,CP,译码器,做输出口:,做输入口:,外设,自外设,17,简单I/O接口综合应用例,根据开关状态在7段数码管上显示数字或符号 设输出接口的地址为F0H 设输入接口地址为F1H 当开关的状态分别为00001111时,在7段数码管上对应显示0F,18,O1 I1 O2 I2 O3 I3 O4 I4 E1,K0K3,+5V,G G2A G2B C B A,1,74LS244,D0 Q0 | Q1

5、 D7 Q2 Q3 Q4 CP Q5 Q6 Q7,a b c d e f g DP,7406,反相器,74LS273,Rx8,1,74LS138,D0D7,IOW#,IOR#,Y0,Y1,F0H = 0000 0000 1111 0000 F1H = 0000 0000 1111 0001,&,1,A7A4,A15A8,A3,A2,A1,A0,D0,D1,D2,D3,译码器,19,20,简单I/O接口综合应用例, Seg7 DB 3FH,06H, 5BH,4FH,66H,6DH, 7DH,07H,7FH,67H,77H, 7CH,39H,5EH,79H,71H LEA BX, Seg7 MOV

6、 AH, 0,GO: IN AL, 0F1H AND AL, 0FH MOV SI, AX MOV AL, BX+SI OUT 0F0H, AL JMP GO,21,8.2 可编程数字接口芯片,掌握: 芯片的引线及内部结构 工作方式及工作时序 芯片的应用: 芯片与系统的连接 芯片的初始化编程,22,一、可编程定时器8253,16位硬件减法计数器 含三个独立定时/计数器 最大计数初值为0,内部结构框图,23,主要引线功能,连接系统端的主要引线: D0-D7 CS RD WR A0,A1,A1 A0 0 0 CNT0 0 1 CNT1 1 0 CNT2 1 1 控制寄存器,24,主要引线功能,连接

7、外设端的主要引线: CLK - 时钟脉冲输入 GATE - 门控信号输入 OUT - 定时输出,25,结构特点,计数器 控制寄存器 控制逻辑,16位初值寄存器 16位计数寄存器,存放8位控制命令字,26,计数启动方式,软件启动 硬件启动,GATE端为高电平 置入计数初值后的第2个CLK脉冲的下降沿启动,GATE端有一个上升沿 对应CLK脉冲的下降沿启动,27,工作方式,方式0 方式1,软件启动,不自动重复计数。 装入初值后输出端变低电平, 计数结束输出高电平,硬件启动,不自动重复计数 装入初值后输出端变高电平, 计数开始输出低电平,结束后又变高,28,工作方式,方式2 方式3,软、硬件启动,自

8、动重复计数 装入初值后输出端变高电平, 计数到最后一个脉冲时输出低电平,软、硬件启动,自动重复计数 装入初值后输出端变高电平, 输出对称方波,29,工作方式,方式4 方式5,软件启动,不自动重复计数。 装入初值后输出端变高电平, 计数结束输出一个CLK宽度的低电平,硬件启动,不自动重复计数 波形与方式4相同,30,控制字,用于确定各计数器的工作方式,格 式,31,8253的应用,与系统的连接 芯片初始化 置计数初值,编程,32,与系统的连接示意,CLK,GATE,OUT,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,高位地址,外部电路,8253,33,初始化

9、程序流程,写控制字,写计数值低8位,写计数值高8位,写入顺序: 可以计数器为单位,也可先写所有计数器控制字,再写入初值,34,8253应用例,采用8253作定时/计数器,其接口地址为0120H0123H。 要求计数器0每10ms输出一个CLK脉冲宽的负脉冲;用计数器1产生10KHz的连续方波信号,计数器2在定时5ms后产生输出高电平。输入8253的时钟频率为2MH。 画线路连接图,并编写初始化程序。,35,8253应用例,计算计数初值: CNT0:10ms/0.5us=20000 CNT1:2 MHz/10KHz=200 CNT2: 5ms/0.5us=10000 确定控制字: CNT0:方式

10、2,16位计数值 CNT1:方式3,低8位计数值 CNT2:方式0, 16位计数值,36,8253应用例,CLK0,GATE0,OUT1,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,8253,CLK2,GATE1,GATE2,+5V,CLK1,2MHz,OUT0,OUT2,?,37,8253应用例 初始化程序,CNT0: MOV DX,0123H MOV AL,34H OUT DX,AL MOV DX,0120H MOV AX,20000 OUT DX,AL,MOV AL,AH OUT DX,AL CNT1: CNT2: ,38,二、并行接口8255,特点

11、: 含3个独立的8位并行输入/输出端口,各端口均具有数据的控制和锁存能力 可通过编程,设置各端口工作在某一确定状态下。,39,引线,连接系统端的主要引线: D0-D7 CS RD WR A0,A1 REAST,A1 A0 0 0 A端口 0 1 B端口 1 0 C端口 1 1 控制寄存器,40,引线,连接外设端的引脚: PA0 PA7 PB0 PB7 PC0 PC7,分别对应A、B、C三个端口,41,结构,A组 B组,端口A 端口C的高4位,端口B 端口C的低4位,42,8255与系统的连接示意图,D0D7,WR,RD,A1,A0,CS,DB,IOW,IOR,A1,A0,译码器,8255,A口

12、,B口,C口,D0D7,外 设,43,工作方式,基本输入/输出方式(方式0) 选通工作方式(方式1) 双向传送方式(方式2),44,方式0:,相当于三个独立的8位简单接口 各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出 C端口可以是一个8位的简单接口,也可以分为两个独立的4位端口 常用于连接简单外设(适于无条件或查询方式),45,方式0的应用:,常使A端口和B端口作为8位数据的输入或输出口,使C口的某些位作状态输入,46,方式1,利用一组选通控制信号控制A端口和B端口的数据输入输出 A口、B口作输入或输出口,C口的部分位用作选通控制信号 A口、B口在作为输入和输出时的选通信

13、号不同,输入,输出,47,方式1的应用,方式1主要用于中断控制方式下的输入输出 C口的8位除用作选通信号外,其余位可工作于方式0下,作为输入或输出口,48,方式2,双向输入输出方式-可以既作为输入口,又作为输出口 只有A端口可工作在方式2下,49,方式2的应用,可使A端口作为双向端口所有 用于中断控制方式 当A口工作于方式2时,B口可工作于方式1(此时C口的所有位都用作选通控制信号的输入输出),也可工作于方式0(此时C口的剩余位也可工作于方式0),50,方式控制字及状态字,利用软件编程确定3个端口工作于何种方式下; C端口可以按位操作。当其工作于方式0下且作为输出口时,需要对输出线设置初始状态

14、(即初始化)。,51,方式控制字与状态字格式,控制字-确定3个端口的工作方式 状态字-确定C口某一位的初始状态,52,8255芯片的应用,芯片与系统的连接 芯片的初始化 相应的控制程序,例7-3,53,8255应用例2:,利用8255实现开关检测和继电器控制电路; 当开关K闭合时,使8个继电器通电动作; 系统每隔100ms检测一次开关状态,实现相应的控制; 初始状态下继电器都不动作。,54,题目分析,采用中断控制方式(每100ms中断一次) 使8255的A端口和B端口均工作于方式0 8253计数器0和计数器1均工作于方式3,利用OUT0的输出作为计数器1的时钟信号,使OUT0输出频率为2KHz

15、,OUT1输出频率为10Hz。用OUT1信号作为中断源。 8253两个计数器的计数初值分别为: CNT0:2MHz/2KHz =1000 CNT1:100ms/0.5ms=200,55,CS,A0,A1,WR,RD,DB,PA0,PA7,PB0,PB7,+5V,Vcc,K,继电器8,384H387H,388H38BH,CS,A0,A1,OUT1,CLK1,2MHz时钟脉冲,CLK0,OUT0,INTR(每秒10次),8255,8253,D0-D7,IOR#,IOW#,A1,A0,R,Q,R,56,8255的初始化程序,MOV DX,387H MOV AL,82H ; 1 0000 010 OU

16、T DX,AL XOR AL,AL ; 所有继电器均断电 MOV DX,384H OUT DX,AL,57,8253的初始化程序,初始化命令字: MOV DX,38BH MOV AL,36H OUT DX,AL MOV AL,56H OUT DX,AL,置计数初值: MOV DX,388H MOV AX,2000 OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,389H MOV AL,200 OUT DX,AL,58,8255的中断服务程序,(主程序及中断初始化部分略) MOV DX,385H ; PB口输入开关状态 WAIT0:IN AL,DX AND AL,1 ;

17、 K闭合否? JNZ WAIT0 MOV DX,384H ; PA口控制继电器 MOV AL,0FFH ; 所有继电器动作 OUT DX,AL ,59,数字接口电路部分作业:,8.1 8.3 8.5 8.7 8.10 8.11 *,60,8.3 模拟量输入输出接口,主要内容: 模拟量输入输出通道的组成 D/A转换器的工作原理、连接及编程 A/D转换器的工作原理、连接及编程,61,一、模拟量输入输出通道,模拟量的输入通道: 将工业现场的模拟信号或非电的物理信号转换为 计算机的标准输入信号 数据采集 模拟量的输出通道 将计算机输出的数字信号转换为模拟量以驱动生 产现场的执行器件 过程控制,62,模

18、拟量I/O通道的组成:,模拟接口电路的任务,模拟电路的任务,00101101,10101100,工 业 生 产 过 程,传感器,放大 滤波,多路转换 & 采样保持,A/D 转换,放大 驱动,D/A 转换,输出 接口,微 型 计 算 机,执行机构,输入 接口,物理量 变换,信号 处理,信号 变换,I/O 接口,输入通道,输出通道,63,模拟量I/O接口,模拟量,D/A,传感器,执行元件,A/D,数字量,数字量,模拟量,模拟量输入 (数据采集),模拟量输出 (过程控制),计算机,64,二、数/模(D/A)变换器,掌握: D/A变换器的工作原理 D/A变换器的主要技术指标 DAC0832的三种工作模

19、式 DAC0832的应用,65,1. D/A变换器的基本构成,模拟开关 电阻网络 运算放大器,权电阻网络 R-2R梯形电阻网络,Vref,Rf,模拟开关 电阻网络,VO,数字量,66,2. 基本变换原理,运放的放大倍数足够大时,输出电压VO与输入电压Vin的关系为:,Vi,Rf,VO,R,67,基本变换原理,若输入端有n个支路, 则输出电压VO与输入电压Vi的关系为:,Vi,Rf,VO,R1,Rn,68,基本变换原理,令每个支路的输入电阻为2iR,并令基准电压Vref =(Rf/Ri)Vi,则有,69,基本变换原理,如果每个支路由一个开关Si控制,Si=1表示Si合上,Si=0表示Si断开,则

20、上式变换为,若Si=1,该项对VO有贡献;若Si=0,该项对VO无贡献,70,权电阻网络:,2R 4R 8R 16R 32R 64R 128R 256R,Vref,Rf,VO,S1 S2 S3 S4 S5 S6 S7 S8,这里,上式中的n=8,71,基本变换原理,如果用8位二进制代码来控制图中的S1 S8 (Di=1时Si闭合;Di=0时Si断开),则不同的二进制代码就对应不同输出电压VO; 当代码在0FFH之间变化时,VO相应地在0-(255/256)Vref之间变化; 为控制电阻网络各支路电阻值的精度,实际的D/A转换器采用R-2R梯形电阻网络,它只用两种阻值的电阻(R和2R)。,72,

21、3. 主要技术指标,分辨率(Resolution) 输入的二进制数每1个最低有效位 (LSB)使输出变化的程度。 可用输入数字量的位数来表示,如8位、10位等;也可用一个LSB 使输出变化的程度来表示。 LSB Least Significant Bit,73,分辩率,一个满量程为5V的10位D/A变换器,1 LSB的变化将使输出变化 5/(210-1) = 5/1023 = 0.04888V = 48.88mV,74,转换精度(误差),实际输出值与理论值之间的最大偏差 可用最小量化阶来度量: =1/2 LSB 也可用满量程的百分比来度量: 如0.05% FSR (FSR-Full Scale

22、 Range),75,转换时间,从开始转换到与满量程值相差1/2 LSB所对应的模拟量所需要的时间。,t,V,1/2 LSB,tC,VFULL,76,4. DAC0832,特点: 8位电流输出型D/A转换器 T型电阻网络 差动输出,77,DAC0832的内部结构:,78,主要引线功能,输入寄存器控制信号: D7D0:输入数据线 ILE:输入锁存允许 CS:片选信号 WR1:写输入锁存器,79,主要引线功能,用于DAC寄存器的控制信号: WR2:写DAC寄存器 XFER:允许输入锁存器的数据传送到DAC寄存器,80,主要引线功能,其它引线: VREF:参考电压。 -10V+10V,一般为+5V或

23、+10V IOUT1、IOUT2: D/A转换差动电流输出。 用于连接运算放大器的输入 Rfb:内部反馈电阻引脚,接运放输出 AGND、DGND:模拟地和数字地,81,工作时序,写输入寄存器,写DAC寄存器,82,工作模式,单缓冲模式 双缓冲模式 无缓冲模式,83,单缓冲模式,使输入锁存器或DAC寄存器二者之一处于直通,即芯片只占用一个端口地址。 CPU只需一次写入即开始转换。写入数据的程序为: MOV DX,PORT MOV AL,DATA OUT DX,AL,84,双缓冲模式(标准模式),对输入寄存器和DAC寄存器均需控制; 当输入寄存器控制信号有效时,数据写入输入寄存器中;再在DAC寄存

24、器控制信号有效时,数据才写入DAC寄存器,并启动变换; 此时芯片占用两个端口地址; 优点:数据接收与D/A转换可异步进行; 可实现多个DAC同步转换输出 特点:分时写入、同步转换,85,双缓冲模式同步转换例,86,双缓冲模式的数据写入程序,MOV AL,data MOV DX,port1 0832-1的输入寄存器地址 OUT DX,AL MOV DX,port2 0832-2的输入寄存器地址 OUT DX,AL MOV DX,port3 DAC寄存器地址 OUT DX,AL HLT,87,无缓冲器模式,使内部的两个寄存器都处于直通状态。模拟输出始终跟随输入变化。 不能直接与数据总线连接,需外加

25、并行接口(如74LS373、8255等)。,88,5. D/A转换器的应用,信号发生器 用于闭环控制系统,向D/A转换器写入某种按规律变化的数据,即可在输出端获得相应的各种波形,89,三、模/数(A/D)转换器,主要内容: A/D转换器的一般工作原理; A/D转换器的主要技术指标; A/D转换器的应用,与系统的连接 数据采集程序的编写,90,1. A/D转换器用途,用于将连续变化的模拟信号转换为数字信号的装置,简称ADC,是模拟系统与计算机之间的接口部件。,91,2. A/D转换器类型,计数型A/D转换器 速度慢、价格低,适用于慢速系统 双积分型A/D转换器 分辩率高、抗干扰性好、转换速度慢,

26、适用于中速系统 逐位反馈型A/D转换器 转换精度高、速度快、抗干扰性差,92,逐位反馈型A/D转换器,原理:类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物,93,3. 主要技术指标,转换精度 量化误差 非线性误差 其它误差 总误差=各误差的均方根,影响精度的误差,94,量化间隔,一个最低有效位对应的模拟量,即 =Vmax /(2n-1) 例:某8位ADC的满量程电压为5V,则其分辨率为: 5V/255=19.6mV,95,量化误差,绝对量化误差=1/2 相对量化误差=(1/2) 1LSB 100%,96,量化误差,例: 设满量程电压=10V, A/D变换器位数=10位,则: 绝对量

27、化误差 10/211 = 4.88mV 相对量化误差 1/211 *100% = 0.049%,97,转换时间,实现一次转换需要的时间 精度越高(字长越长),转换速度越慢。,98,输入动态范围,允许转换的电压的范围 如05V、010V等。,99,4. ADC0809,8通道(8路)输入 8位字长 逐位逼近型 转换时间100s 内置三态输出缓冲器,100,主要引脚功能,D7D0:输出数据线(三态) IN0IN7:8通道(路)模拟输入 ADDA、ADDB、ADDC:通道地址 ALE:通道地址锁存 START:启动转换 EOC:转换结束状态输出 OE:输出允许(打开输出三态门) CLK:时钟输入(1

28、0KHz1.2MHz),101,START EOC CLK,OE,D7 D0,VREF(+) VREF(-),ADDC ADDB ADDA ALE,IN0,IN7,比较器,8路模拟开关,逐位逼近寄存器SAR,树状开关,电阻网络,三态输出锁存器,时序与控制,地址锁存及 译码,D/A,8 个模拟输入通道,8选1,内部结构:,102,工作时序,103,ADC0809工作过程,送通道地址,以选择要转换的模拟输入; 锁存通道地址到内部地址锁存器; 启动A/D变换; 判断转换是否结束; 读转换结果,104,ADC0809的应用,芯片与系统的连接 编写相应的数据采集程序,105,芯片与系统的连接,模拟输入端

29、Ini :,单路输入时,ADDC ADDB ADDA,IN4,ADC0809,输入,多路输入时,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,输入0 输入1 输入2 输入3 输入4,CPU指定 通道号,+5V,106,通道地址线的连接,多路输入时,地址线不能接死,要通过一个接口芯片与数据总线连接。 接口芯片可以选用: 简单接口芯片74LS273,74LS373等(占用一个I/O地址) 可编程并行接口8255(占用四个I/O地址),107,通道地址线的连接,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,输 入,DB,

30、74LS273,Q2 Q1 Q0,CP,来自I/O译码,D0-D7,ADDC ADDB ADDA,IN0 IN1 IN2 IN3 IN4,ADC0809,DB,8255,PB2 PB1 PB0,CS#,来自I/O译码,D0-D7,A1 A0,A1 A0,108,数据输出线的连接,可直接连到DB上,或通过另外一个输入接口与DB相连; 两种方法均需占用一个I/O地址,D0-D7,ADC0809,DB,OE,来自I/O译码,D0-D7,ADC0809,DB,OE,来自I/O译码,直接连DB,通过输入接口连DB,74LS244,+5V,DI,DO,E1# E2#,109,ALE和START端的连接,独

31、立连接:用两个信号分别进行控制,需占用两个I/O端口 或两个I/O线; 统一连接:用一个脉冲信号的上升沿进行地址锁存,下降沿 实现启动转换,只需占用一个I/O端口或一个I/O线。,ADC0809,ALE START,独立连接,来自I/O译码器1,来自I/O译码器2,ADC0809,ALE START,统一连接,来自I/O译码器,110,判断转换结束的方法,软件延时等待; 软件查询EOC状态; 把EOC作为中断申请信号接到中断控制器的中断请求输入端,在中断服务程序中读入转换结果。,111,软件查询方法判断EOC状态,将EOC信号通过一个三态门连接到数据总线; 三态门占用一个I/O端口地址; CPU通过不断读取该三态门端口的输入数据,来确定是否转换结束。,112,ADC0809与系统的连接例,D0,IN0,A15 A0 IOR IOW,D7 D0,D7-D0 EOC OE START ALE ADDC ADDB ADDA,译 码 器,ADC0809,113,初始化,送通道地址,送ALE信号,送START信号,读EOC状态,送读允许OE信号,EOC=1?,读转换结果,采集结束否?,N,Y,结 束,Y,送下一路通道地址,(1),(1),N,114,8.3 作业:,8.14 8.15 8.16 8.17 8.19 8.20,谢谢大家!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1