nullnullA/D和D/A转换学习情景六学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换学习目标:
★掌握A/D和D/A转换的概念。
★掌握常用电路的使用原则。
★熟练掌握AT89S52外围芯片扩展方法
技能目标:
★能够利用89S52和A/D典型芯片—
ADC0809制作一个简单的实用电路。
★能够利用89S52和A/D典型芯片—
DAC0832制作一个简单的实用电路学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换项目一 液位控制器
第一部分 项目要求
在水塔中经常要根据水面的高低进行水位的自动控制,同时进行水位压力的检测和控制。要求设计一个具有水位检测、报警、自动上水和排水(上水用电机正转模拟,下水用电机反转模拟)、压力检测功能的液位器。该液位控制器主要由89S52单片机,0809A/D转换器,A、B、C三点水位检测电路,压力检测电路、数码显示电路、键盘和电源电路组成。 第二部分 相关知识 第二部分 相关知识 模拟量输入通道一般由传感器、放大器、多路模拟开关、采样保持器和A/D转换器组成。
大信号模拟电压,能直接满足A/D转换输入要求,则可直接送入A/D转换器,经过A/D转换后再送入单片机。也可通过V/F转换成频率信号送入单片机。
小信号模拟电压,则首先应将该信号电压放大,放大到能满足A/D转换、V/F转换要求的输人电压。
以电流为输出信号的传感器或传感仪
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
则首先应通过I/V转换,将电流信号转换成电压信号。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 一、A/D转换概述
A/D转换器是一种能把输入模拟电压或电流变成与其成正比的数字量的电路芯片。
分类:计数器式A/D转换器、双积分式A/D转换器、逐次逼近式A/D转换器和并行A/D转换器。
概述
A/D转换器的技术指标:
量化误差与分辨率:
A/D转换器的分辨率表示输出数字量变化一个相邻数码所需输入模拟电压的变化量,习惯上以输出二进制位数或满量程与2n之比表示。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 转换精度
A/D转换器转换精度反映了一个实际A/D转换器在量化值上与一个理想A/D转换器进行模/数转换的差值,由模拟误差和数字误差组成。
模拟误差是比较器、解码网络中电阻值以及基准电压波动等引起的误差;
数字误差主要包括丢失码误差和量化误差,丢失码误差属于非固定误差,由器件质量决定。
转换时间与转换速率
A/D转换器完成一次转换所需要的时间为A/D转换时间。转换速率是转换时间的倒数。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换二、A/D转换典型芯片ADC0809
ADC0809是8路8位逐次逼近式A/D,可实现8路模拟信号的分时采集。典型时钟频率为500kHz。每一通道的转换时间需要66~73个时钟脉冲,约l00μs。可以和89S52单片机通过总线直接接口。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换1.芯片引脚 IN0~IN7:模拟量输入通道信号单极性,电压范围0-5V。
A、B、C地址线:A为低位地址,C为高位地址,模拟通道的选择信号,引脚图中为ADDA、ADDB和ADDC。
ALE:模拟通道锁存信号,当此引脚由低电平到高电平跳变时将加到C,B,A引脚的数据锁存并选通相应的模拟通道。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换START 转换启动信号:START上跳沿时,所有内部寄存器清“0”;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。
D7~D0 数据输出线:为三态缓冲输出形式。
OE 输出允许信号:用于控制三态输出锁存器向单片机输出转换得到的数据。
OE=0,输出数据线呈高电阻;
OE=1,输出转换得到的数据。
CLK 时钟信号:ADC 0809的内部没有时钟电路,所需时钟信号由外界提供。通常使用频率为500kHz的时钟信号。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换EOC 转换结束信号:EOC=0,正在进行转换;
EOC=1,转换结束。
Vcc: +5V电源
Vref 参考电源:参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5V(Vref(+)=+5V,Vref(一)=0V)。
2.单片机与ADC0809接口
需解决三个问题:
①要给START线送一个100ns宽的起动正脉冲。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换②获取EOC线上的状态信息,因为它是A/D转换的结束标志。
③要经“三态输出锁存器”输出一个端口地址,也就是给OE端送一个输出转换得到数据的信号。
AT89S52和ADC接口通常可以采用定时、查询和中断三种方式。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换图6.4 AT89S52和ADC0809的接口 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换ADDA,ADDB,ADDC分别接数据线中的低3位P0.0~P0.2,则指向IN7通道的相应程序指令为
MOV DPH,# 0E0H ;送A/D转换器端口地址
MOV A,# 07H ;IN7地址送A
MOVX @DPTR,A ;送地址并启动A/D转换
学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换4.应用举例
【例10.1】分别采用不同方式对8路模拟信号轮流采一遍样,并依次把转换后的数据存放到数据存储区。ADC0809与AT89S52接口工作方式见图10.5。
定时传送方式:EOC开始转换时为低电平,当转换结束时为高电平。
查询方式:查询EOC引脚,接P1.0。
中断方式:EOC经反相器接AT89S52的外部中断引脚INT1。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换1)定时传送方式
MAIN:MOV R1,#data
MOV DPTR,#7FF8H
;P2.7=0,且指向通道0
MOV R7,#08H ;置通道数
LOOP:MOVX @DPTR,A ;启动A/D转换
MOV R6,#0AH
DLAY:NOP
NOP
NOP学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 NOP
DJNZ R6,DLAY
MOVX A,@DPTR; 读取转换结果
MOV @R1,A
INC DPTR ;指向下一个通道
INC R1 ;修改数据区指针
DJNZ R7,LOOP学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换2)查询方式
MAIN:MOV R1,#data
MOV DPTR,#7FF8H;P2.7=0,且指向通道0
MOV R7,#08H ;置通道数
LOOP:MOVX @DPTR,A ;启动A/D转换
SETB P1.0
WAIT:JNB P1.0,WAIT ;查询P1.0状态
MOVX A,@DPTR ;读取转换结果
MOV @R1,A
INC DPTR ;指向下一个通道
INC R1 ;修改数据区指针
DJNZ R7,LOOP ;8个通道全采样完了吗?
RET学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换3)中断方式
SETB IT1
SETB EX1
SETB EA
MOV DPTR,#7FF8H
MOV A,#0
MOVX @DPTR,A
…
EINT1:MOV DPTR,#7FF8H
MOVX A,@DPTR
MOV 30H,A
MOV A,#00
MOVX @DPTR,A
RETI学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换第三部分 项目实施
一、硬件电路分析
液位控制器主要由89S52单片机,0809A/D转换器,A、B、C三点水位检测电路,压力检测电路、数码显示电路、键盘和电源电路组成。三路“传感器”(三根插入水中的导线)检测液位的变化,89S52控制液位的显示及电泵的抽放水,ADC0809采集水位压力的变化并由数码管显示压力。电路如图6.5所示(教材)。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换1.液位采集电路
三路液位检测均采用简单的三极管检测电路检测液位变化,将电平信号分别送入单片机。实际检测时,从P3焊接出四根导线,分别将接A、B、C和VCC的导线放入水杯(模拟水塔)中,位置如图6.6所示。学习情景六 A/D和D/A转换图6.6 液位检测位置学习情景六 A/D和D/A转换2.压力检测电路
该电路主要由LM324运放组成测量放大器,放大器可分为前后两级。测量的模拟信号经过ADC0809转换为数字信号并传输给单片机,经单片机处理后送数码管显示。
二、电路功能介绍
学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换1.液位检测的调试
接通电源,改变液位使检测点变化,当液位在A点以下时红灯连续亮并且发出频率较高的报警声,显示00,电机正转;当A≤液位
内容
财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容
是合理选择D/A转换器和其他有关器件,实现与AT89S52的正确连接以及编制转换程序。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换一、概述
1.D/A转换器
D/A转换器是一种能把数字量转换成模拟量的电子器件。在单片机测控系统中经常采用的是D/A转换器的集成电路芯片,称为D/A接口芯片或DAC芯片。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换2. D/A转换器性能指标
(1)分辨率
分辨率是D/A转换器的数字量在最低位上变化1位时输出模拟量的最小变化。
如满量程10V的8位DAC芯片的分辨率为8位。
学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换(2)转换精度
转换精度为实际模拟输出与理想(理论)模拟输出之间最大偏差。
(3)失调误差
指输入数字量为零时,模拟输出量与理想输出量的偏差。
3. D/A转换器的选择要点
输入信号的形式
分辨率和转换精度
建立时间
转换结果的输出形式
学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换二、DAC转换典型芯片—DAC0832
DAC0832是目前应用较为广泛的8位D/A转换芯片之一。它具有与微机接口简便、易于操作控制和使用灵活等优点。片外为20引脚双列直插式封装。
分辨力:8位
建立时间:1us,电流型输出
单电源:+5V~+15V
低功耗:200mW
精度:+1 LSB
线性误差:+0.1%
基准电压范围:-15V~+15V学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换1. DAC0832的引脚
D7~D0: 转换数据输入。
/CS: 片选信号(输入),低电平有效。
ILE: 数据锁存允许信号(输入),高电平有效。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 /WR1: 第1信号(输入),低电平有效。该信号与ILE 信号共同控制输入寄存器是数据直通方式还是数据锁存方式:当ILE=1和/WR1=0时,为输入寄存器直通方式;当ILE=1和/WR1 =1时,为输入寄存器锁存方式。
/XFER:数据传送控制信号(输入),低电平有效 。
/WR2 :第2写信号(输入),低电平有效.该信号与/XFER信号合在一起控制DAC寄存器是数据直通方式还是数据锁存方式:当 /WR2=0和/XFER=0时,为DAC寄存器直通方式; 当/WR2=1和/XFER=0时,为DAC寄存器锁存方式。 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 Iout1:电流输出“1”。当数据为全“1”时,输出电流最大;为全“0”时输出电流最小。
Iout2:电流输出“2”。DAC转换器的特性之一是:
Iout1 +Iout2=常数。
Rfb:反馈电阻端
即运算放大器的反馈电阻端,电阻(15KΩ)已固化在芯片中。因为DAC0832是电流输出型D/A转换器,为得到电压的转换输出,使用时需在两个电流输出端接运算放大器,Rfb 即为运算放大器的反馈电阻。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 Vref:基准电压,是外加高精度电压源,与芯片内的电阻网络相连接,该电压可正可负,范围为-10V~+10V.
DGND:数字地
AGND:模拟地
2. DAC0832内部结构
DAC0832是一个8位单片D/A转换器,它的内部逻辑结构如图所示。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换3、DAC0832和AT89S52接口方式
根据对DAC0832的输入寄存器和DAC寄存器的不同的控制方法,DAC0832有3种工作方式:
单缓冲方式:两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式。
双缓冲方式:把DAC0832的输入寄存器和DAC寄存器都接成受控锁存方式。
直通:即输入数据直接送D/A转换电路进行转换,3种工作方式连接如图所示。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换双缓冲器连接方式单缓冲器连接方式直通
连接方式学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 (1)单缓冲方式
应用场合:如果只有一路模拟量输出,或虽是多路模拟量输出但并不要求输出同步的情况下,就可采用单缓冲方式。学习情景六 A/D和D/A转换nullDAC0832按单缓冲方式与89S52的连接
89S52学习情景六 A/D和D/A转换【例】产生锯齿波。
DAC0832工作于单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。假定输入寄存器地址为5000H, 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换锯齿波的程序如下。
ORG 2000H
START:MOV DPTR,#5000H ;选中DAC0832
MOV A, #00H
LP:MOVX @DPTR,A ;向DAC0832
输出数据
INC A ;累加器加1
SJMP LP学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换产生矩形波学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换矩形波程序如下
ORG 2000H
START:MOV DPTR, #FFFEH
LP: MOV A,#dataH ;置输出矩形波上限
MOVX @DPTR,A
LCALL DELHH;调用高电平延时程序。
MOV A,#dataL ;置输出矩形波下限
MOVX @DPTR,A
LCALL DELL ;调用低电平延时程序。
SJMP LP学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换三角波的程序如下
ORG 2000H
START:MOV DPTR,#FFFEH ;选中DAC0832
MOV A, #00H
UP: MOVX @DPTR,A
INC A
JNZ UP ;上升到A中为FFH
DOWN: DEC A
MOVX @DPTR,A
JNZ DOWN ;下降到A中为00H
SJMP UP ;重复学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换梯形波程序如下
ORG 2000H
START:MOV DPTR, #FFFEH
L1: MOV A,#dataL ;置下限
UP: MOVX @DPTR,A
INC A
CLR C
SUBB A, #dataH ;与上限比较
JNC DOWN 学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 ADD A,#dataH ;恢复
SJMP UP
DOWN:LCALL DEL ;调上限延时程序
L2: MOVX @DPTR,A
DEC A
SUBB A,# dataL ;与下限比较
JC L1
ADD A,#dataL ;恢复
SJMP L2学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换(2)双缓冲方式
应用场合:对于多路D/A转换接口,要求同步进行D/A转换输出时,必须采用双缓冲器同步方式接法。
DAC0832采用双缓冲方式时,数字量的输入锁存和D/A转换输出是分两步进行的。
第一, CPU分时向各路D/A转换器输入要转换的数字量并锁存在各自的输入寄存器中。
第二,CPU对所有的D/A转换器发出控制信号,使各路输入寄存器中的数据进入DAC寄存器,实现同步转换输出。
此时,每一路模拟量输出需一片DAC0832芯片,构成多个DAC0832同步输出电路。 学习情景六 A/D和D/A转换null89S52DAC0832双缓冲方式接口电路学习情景六 A/D和D/A转换MOV DPTR,#0DFFFH ;指向0832 (1)
MOV A,#data11 ;datal送入0832 (1)中锁存
MOVX @DPTR,A
MOV DPTR,#0BFFFH ;指向0832 (2)
MOV A,data2 ;data2送入0832 (2)中锁存
MOVX @DPTR,A
MOV DPTR,#7FFFH ;给0832(1)、
0832(2)提供信号,
同时完成D/A转换输出
MOVX @DPTR,A学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换第三部分 项目实施
一、硬件电路学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换分析:对于小功率直流电机驱动,使用单片机极为方便,其方法就是控制电机定子电压接通和断开时间的比值(即占空比),以此来驱动电机和改变电机的转速,这种方法称为脉冲宽度调速法(或简称脉宽调速法)。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 占空比以及占空比与电机转速的关系,如图所示。学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换 电压变换周期为T,电压接通时间为t,则占空比表示为D=t/T。设电机固定接通电源时的最大转速为Vmax,则用脉冲宽度调速的电机转速为:
Vd=Vmax×D
二、参考程序学习情景六 A/D和D/A转换学习情景六 A/D和D/A转换DAC0832输入寄存器的地址为9000H,则89S52的电机驱动程序清单如下:
ORG 0000H
AJMP DAMOT
ORG 08100H
DAMOT:MOV DPTR,#9000H;输入寄存器地址
MOV A,#80H
MOVX @DPTR,A ;输出0V电平
ACALL DELAY1 ;维持0V电平
MOV A,#0FFH
MOVX @DPTR, A ;输出+5V电平
ACALL DELAY2 ;维持+5V电平
AJMP DAMOT学习情景六 A/D和D/A转换