Presentation is loading. Please wait.

Presentation is loading. Please wait.

《微型计算机原理与接口技术》 第4版 王良 宁德师范学院 吴宁 乔亚男 编著 清华大学出版社 出版

Similar presentations


Presentation on theme: "《微型计算机原理与接口技术》 第4版 王良 宁德师范学院 吴宁 乔亚男 编著 清华大学出版社 出版"— Presentation transcript:

1 《微型计算机原理与接口技术》 第4版 王良 宁德师范学院 吴宁 乔亚男 编著 清华大学出版社 出版
吴宁 乔亚男 编著 清华大学出版社 出版 王良 宁德师范学院 学习交流群号:

2 第8章 模拟量的输入输出

3 模拟量输入输出通道的组成 D/A转换器的工作原理、连接及编程 A/D转换器的工作原理、连接及编程
主要内容: 模拟量输入输出通道的组成 D/A转换器的工作原理、连接及编程 A/D转换器的工作原理、连接及编程

4 一、模拟量的输入输出通道

5 模拟量I/O通道: 输入通道 输出通道 工 微 业 型 生 计 产 算 过 机 程 模拟电路的任务 模拟接口电路的任务 传感器 变 送 器
放大 滤波 多路转换 & 采样保持 A/D 转换 输入 接口 物理量 变换 信号 处理 信号 变换 I/O 接口 输出通道 执行机构 放大 驱动 D/A 转换 输出 接口 模拟电路的任务 模拟接口电路的任务

6 模拟量的输入通道 传感器(Transducer) 变送器(Transformer) 信号处理(Signal Processing)
非电量→电压、电流 变送器(Transformer) 转换成标准的电信号 信号处理(Signal Processing) 放大、整形、滤波 多路转换开关(Multiplexer) 多选一 采样保持电路(Sample Holder,S/H) 保证变换时信号恒定不变 A/D变换器(A/D Converter) 模拟量转换为数字量

7 模拟量的输出通道 D/A变换器(D/A Converter) 数字量转换为模拟量 低通滤波 平滑输出波形 放大驱动 提供足够的驱动电压,电流

8 二、数/模(D/A)变换器

9 掌握: D/A变换器的工作原理 D/A变换器的主要技术指标 DAC0832的三种工作模式 DAC0832的应用

10 1. D/A变换器的工作原理 组成: 模拟开关 电阻网络 运算放大器 Vref Rf 模拟开关 电阻网络 VO 数字量

11 基本变换原理 当运放的放大倍数足够大时,输出电压VO与输 入电压Vin的关系为: Vin Rf VO R

12 基本变换原理 若输入端有n个支路, 则输出电压VO与输入电压Vi 的关系为: Vin Rf VO R1 Rn

13 n=8的权电阻网络 设:Si=1表示Si合上,Si=0表示Si断开,则: Rf Vref VO 2R 4R S1 8R S2 16R S3

14 基本变换原理 如果用8位二进制代码来控制图中的S1~S8(Di=1时Si闭 合;Di=0时Si断开),则不同的二进制代码就对应不同 输出电压VO; 当代码在0~FFH之间变化时,VO相应地: 在0~(255/256)Vref之间变化; 为控制电阻网络各支路电阻值的精度,实际的D/A转 换器采用R-2R梯形电阻网络,它只用两种阻值的电阻 (R和2R)。

15 实际的D/A转换器 ——R-2R梯形电阻网络

16 2. 主要技术指标 分辨率(Resolution) 分辨率表示方法: 输入的二进制数每±1个最低有效位 (LSB)使输出变化 的程度。
可用输入数字量的位数来表示,如8位、10位等; 也可用一个LSB (Least Significant Bit)使输出变化 的程度来表示。

17 分辩率例 一个满量程为5V的10位D/A变换器,±1 LSB的变化 所引起输出模拟量的变化为: 5/(210-1) = 5/1023
= 48.88mV

18 转换精度(误差) 实际输出值与理论值之间的最大偏差 影响转换精度的因素: 分辩率 电源波动 温度变化

19 转换时间 从开始转换到与满量程值相差±1/2 LSB所对应 的模拟量所需要的时间 t V 1/2 LSB tC VFULL

20 3. 典型D/A转换器DAC0832 特点: 8位电流输出型D/A转换器 T型电阻网络 差动输出

21 主要引脚功能 输入寄存器控制信号: DAC寄存器的控制信号: D7~D0:输入数据线 ILE:输入锁存允许 CS:片选信号
WR1:写输入锁存器 DAC寄存器的控制信号: WR2:写DAC寄存器 XFER:允许输入锁存器的数据传送到DAC寄存器

22 DAC0832的内部结构

23 工作模式 单缓冲模式 双缓冲模式 无缓冲模式

24 单缓冲模式 使输入锁存器或DAC寄存器二者之一处于直通, 即芯片只占用一个端口地址。 CPU只需一次写入即开始转换。写入数据的程序 为:
MOV DX,PORT MOV AL,DATA OUT DX,AL

25 单缓冲模式例 利用教材图8-12所示线路图输出三角波: 端口地址:0278H 最大输出值5V,对应数字量:FFH
最小输出值0V,对应数字量:00H MOV DX,0278H MOV AL,0 NET1: OUT DX,AL INC AL CMP AL,0FFH JNZ NET1 DEC AL NET2: OUT DX,AL DEC AL CMP AL,0 JNZ NET2 JMP NET1

26 双缓冲模式(标准模式) 分时写入、同步转换 输入寄存器和DAC寄存器均需控制。 此时芯片占用两个端口地址。 优点:
在DAC寄存器控制信号有效时,数据写入DAC寄存器,并启动 变换。 此时芯片占用两个端口地址。 优点: 数据接收与D/A转换可异步进行; 可实现多个DAC同步转换输出。 分时写入、同步转换

27 工作时序 写输入寄存器 写DAC寄存器

28 双缓冲模式同步转换例 译码器 A10-A0 0832-1 0832-2 port1 port2 port3

29 双缓冲模式的数据写入程序 MOV AL,data MOV DX,port1 OUT DX,AL MOV DX,port2 MOV DX,port3 HLT 0832-1的输入寄存器地址 0832-2的输入寄存器地址 DAC寄存器地址

30 无缓冲器模式 使内部的两个寄存器都处于直通状态。模拟输 出始终跟随输入变化。
不能直接与数据总线连接,需外加并行接口(如 74LS373(三态输出的八D锁存器)、8255(可 编程并行I/O接口芯片)等)。

31 4. D/A转换器的应用 向D/A转换器写入某种按规律变化的数据,即可在输出端获得相应的各种波形 信号发生器 用于闭环控制系统

32 三、模/数(A/D)转换器

33 要点: A/D转换器的一般工作原理 A/D转换器的主要技术指标 A/D转换器的应用 与系统的连接 数据采集程序的编写

34 A/D转换器 用于将连续变化的模拟信号转换为数字信号的 装置,简称ADC,是模拟系统与计算机之间的 接口部件。

35 A/D转换器类型 计数型A/D转换器 -------速度慢、价格低,适用于慢速系统 双积分型A/D转换器
分辩率高、抗干扰性好、转换速度慢,适用于中速系统 逐位反馈型A/D转换器 转换精度高、速度快、抗干扰性差

36 1. A/D转换器的工作原理 逐位反馈型A/D转换器 类似天平称重量时的尝试法,逐步用砝码的累积重量 去逼近被称物体

37 2. 主要技术指标 转换精度 量化误差 非线性误差 其它误差 总误差=各误差的均方根

38 量化间隔 一个最低有效位对应的模拟量 例: △=Vmax /(2n-1) 某8位ADC的满量程电压为5V,则其分辨率为:
5V/255=19.6mV

39 量化误差 绝对量化误差 相对量化误差 例: 绝对量化误差=1/2 △ 相对量化误差=(1/2)× △ × 1%
设满量程电压=10V,A/D变换器位数=10位,则: 绝对量化误差 ≈ 10/211 = 4.88mV 相对量化误差 ≈ 1/211 *1% = 0.049%

40 其他指标 转换时间 实现一次转换需要的时间。精度越高(字长越长), 转换速度越慢。 动态范围 允许转换的电压范围

41 3. 典型的A/D转换器芯片 ADC0809: 8通道(8路)输入 8位字长 逐位逼近型 转换时间100μs 内置三态输出缓冲器

42 主要引脚功能 D7~D0:输出数据线(三态) IN0~IN7:8通道(路)模拟输入 ADDA、ADDB、ADDC:通道地址
ALE:通道地址锁存 START:启动转换 EOC:转换结束状态输出 OE:输出允许(打开输出三态门) CLK:时钟输入(10KHz~1.2MHz)

43 内部结构 START EOC CLK OE 时序与控制 IN0 8路模拟开关 8选1 逐位逼近寄存器SAR 三态输出锁存器 D7 D0
路模拟输入通道 时序与控制 IN0 8路模拟开关 8选1 逐位逼近寄存器SAR 三态输出锁存器 D7 D0 IN7 比较器 ADDC ADDB ADDA ALE 地址锁存及 译码 树状开关 D/A 电阻网络 VREF(+) VREF(-)

44 工作时序

45 ADC0809的工作过程 由时序图知ADC0809的工作过程如下: 送通道地址,以选择要转换的模拟输入; 锁存通道地址到内部地址锁存器;
判断转换是否结束; 读转换结果

46 ADC0809的工作流程 送通道地址 送OE开门信号 通道地址锁存 读取转换结果 启动A/D变换 N 转换结束否? Y

47 判断转换结束的方法 软件延时等待(比如延时120us) 软件查询EOC状态。 把EOC作为中断申请信号,接到中断控制器的IN端。
此时不用EOC信号,CPU效率最低 软件查询EOC状态。 把EOC作为中断申请信号,接到中断控制器的IN端。 在中断服务程序中读入转换结果,效率较高

48 ADC0809的应用 硬件连接 通常情况下A/D转换器需要经数字接口与系统连接 数据采集程序设计 从数据采集到存储

49 ADC0809与系统的连接 一般需通过数字接口与系统连接 获取转换结果及状态信息(EOC)需通过输入接口
选择通道地址、输出地址锁存(ALE)及启动变换(START)信 号需通过输出接口 由于ALE和START信号的特点,通常将两者并联后,连接到数字 输出接口。 ALE START 输出接口 1 ALE START

50 ADC0809与系统的连接 当仅采集单路模拟量时 当循环采集多路模拟量时 此时通道可由硬件确定,系统无须输出通道地址, 则也无须地址锁存。
系统须通过软件方式循环输出不同的通道地址,及 相应的地址锁存信号。

51 ADC0809与系统的连接例 单路模拟量输入: 译 码 器 ADC0809 D7--D0 D7-D0 IN0 D0 EOC OE START
A15--A0 D7--D0 D7-D0 EOC OE START ALE ADDC ADDB ADDA ADC0809 数字I/O接口 输出接口 IOR IOW

52 ADC0809与系统的连接例 多路模拟量输入: ┇ 译 码 I/O 器 接 口 D0 IN0 A15--A0 IOR IOW D7--D0
EOC OE START ALE ADDC ADDB ADDA ADC0809 I/O 数字I/O接口 IN7

53 数据采集程序流程 初始化 读转换结果 读EOC状态 送通道地址 N N EOC=1? 采集结束否? 送ALE信号 Y Y 送读允许OE信号
(1) 送通道地址 N N EOC=1? 采集结束否? 送ALE信号 Y Y 送读允许OE信号 结 束 送START信号 送下一路通道地址 (1)

54 模拟量接口设计练习

55 练习1: 教材第8章习题8.14 8255的地址范围 设计与系统的连接线路图
设计与系统的连接线路图 单路模拟量输入,无需连接通道地址和地址锁存信号; 利用8255的A口和B口读取转换结果,C端口输出和输入各种 控制信息。

56 C口低4位输出,需初始化

57 8255初始化程序 INIT PROC NEAR PUSH DX PUSH AX MOV DX,03F7H MOV AL,9AH
OUT DX,AL MOV AL,01H ;PC0初始置1 MOV AL,02H OUT DX,AL ;PC1初始置0 POP AX POP DX RET INIT ENDP

58 数据采集程序 始终保持PC=0即#OE=0 AND AL,40H
START:MOV AX,SEG DATA MOV DS,AX LEA SI,DATA MOV DX,03F6H MOV AL,03H OUT DX,AL CALL DELAY MOV AL,01H WAITT:IN AL,DX AND AL,40H JZ WAITT AND AL,0FEH OUT DX,AL MOV DX,03F5H IN AL,DX MOV [SI],AL INC SI MOV DX,03F4H HLT 始终保持PC=0即#OE=0

59 练习2 利用ADC0809作为A/D转换器,IN0端的模拟输入电压范 围为0-5V,通过8255与系统相连。8255的地址范围为 0200H~0203H。 要求: 设计电路图。 编写如下功能的程序: 循环采集IN0引脚上的电压信号数据,并统计输入幅度大于2.5V 对应的数据的出现次数,当次数等于50000时在屏幕上显示 “Done!”,然后程序结束。

60 练习2 译码电路: 8255的地址范围为0200H~0203H

61 8255初始化程序: INIT8255 PROC MOV DX,203H MOV AL,91H OUT DX,AL MOV AL, B MOV AL, B RET INIT8255 ENDP

62 数据采集程序: DATA SEGMENT MOV DX,200H ;读数据 STR DB “Done!”,”$” COUNT DW 0
DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA MAIN: MOV AX, DATA MOV DS, AX LEA SI,COUNT CALL INIT8255 L0: MOV DX, 203H MOV AL, B ;START OUT DX, AL L1: MOV DX, 202H ;EOC=1? IN AL, DX TEST AL, 1 JZ L1 MOV DX, 203H ;OE=1 MOV AL, B OUT DX,AL MOV DX,200H ;读数据 IN AL,DX PUSH AX MOV DX, 203H ;OE=0 MOV AL, B OUT DX,AL POP AX CMP AL, 80H ;幅度大于2.5V? JB L0 INC WORD PTR[SI] CMP WORD PTR[SI], 50000 JNZ L0 MOV AH, 9 LEA DX, STR INT 21H MOV AH, 4CH CODE ENDS END MAIN


Download ppt "《微型计算机原理与接口技术》 第4版 王良 宁德师范学院 吴宁 乔亚男 编著 清华大学出版社 出版"

Similar presentations


Ads by Google