完全手册51单片机C语言开发详解系列之第10章DA转换实战—模拟量输出电路与软件设计
单片机模拟输入输出技术解析
单片机模拟输入输出技术解析引言:在嵌入式系统设计中,单片机是一种非常重要的器件。
为了满足实际应用中对于模拟量的输入和输出需求,单片机需要具备模拟输入输出功能。
本文将对单片机模拟输入输出技术进行详细解析,包括模拟输入的工作原理、模拟输出的实现方式和常见的应用案例。
一、模拟输入的工作原理模拟输入是将外部模拟量信号转化为数字量信号的过程。
通常采用的模拟输入方式有比例缩放法和积分法。
1. 比例缩放法比例缩放法是通过将外部模拟信号与参考电压进行比较,获得对应的数字量信号。
一般使用模数转换器(ADC)来实现这个过程。
ADC将模拟信号按照一定的精度(即分辨率)进行量化,并输出相应的数字量。
ADC一般由采样模块、量化模块和输出模块组成。
采样模块将外部模拟信号进行采样,采样频率要满足奈奎斯特定理。
量化模块将采样得到的模拟信号按照设定的分辨率进行量化。
输出模块将量化后的数字信号输出到单片机内部进行进一步处理。
2. 积分法积分法是通过使用模拟运算电路来实现模拟输入。
典型的积分电路包括积分放大器和积分器。
积分放大器能够将输入电压进行放大,并且输出的电压与输入电压成正比。
积分器则是通过对输入电压进行积分,并输出积分后的电压。
二、模拟输出的实现方式模拟输出是将单片机内部的数字量信号转化为模拟量信号的过程。
常用的模拟输出方式包括PWM输出和DAC输出。
1. PWM输出PWM(脉冲宽度调制)输出是将数字量信号转化为模拟量信号的一种常见方式。
PWM输出原理是通过调节脉冲的占空比来改变输出电压的平均值。
PWM输出一般由定时器/计数器和比较器组成。
定时器/计数器用来产生一个固定频率的脉冲信号。
比较器将单片机内部的数字量信号与定时器/计数器产生的脉冲信号进行比较,根据比较结果来调节脉冲的占空比。
最终通过滤波电路将PWM信号变为平滑的模拟量输出。
2. DAC输出DAC(数模转换器)输出是一种将数字量信号转化为模拟量信号的常用方式。
DAC输出原理是通过一系列的加权电阻网络将数字信号转化为相应的模拟电压。
51单片机(AD及DA转换器)
时,LE1 …=0
则数据被锁存
当 WR2 和 XFER 均为低电平时,LE2=1,此时允许D/A转换,否则 LE2
=0,将数据锁存于DAC寄存器中
精选2021版课件
9
DAC 0832 常 见 的 几 种 用 法
(a): DAC寄存器直通方式 (b): 输入寄存器直通方式
(c): 两个寄存器同时选精通选20及21版锁课件存方式
非与门
&
输入全为“0”,输出才为
“1”
输入任一为“1”
输出皆为“0”
直通方式: 输入寄存器和DAC寄存器共用一个地址,同时选通输出。
双缓冲器方式:
输入寄存器和DAC寄存器分配有各自的地址,可分别选通用同时输
出多路模拟信号。
精选2021版课件
11
【例9-6】在图9-30的输出端Vout产生-1.25V的电压输出。 解 Vout=-(D/256)×Vref,而Vref=5V,且XFER、CS和WR信号
常有效,因此使D=64即可输出要求的电压。
汇编程序 MOV P1, #64
C语言程序
#include <reg51.h> P1 = 64;
【例9-7】在图9-31的输出端Vout产生-2.5V的电压输出,设Vref为5V。 解 Vout=-(D/256)×Vref,使D=128可输出要求的电压,且需要进行一次对
三角波
NOP
SS2: INC A
;等速上升
JNZ SS1 SS3: DEC A
MOVX @DPTR,A
同样的编程思路,若要产生 如下的梯形波也很容易:
NOP
NOP
NOP
;等速下降
JNZ SS3
第10章AD及D
2.ADC 0809接口与应用
图10-2 是ADC0809与8031单片机的一种常用接口电路图。8路模拟量的变化范围在0~5V间,ADC0809的 EOC转换结束信号接803l的外部中断1上,803l通过地址线P2.0和读、写信号来控制转换器的模拟量输入通 道地址锁存、启动和输出允许。模拟输入通道地址A、B、C由P0.0~P0.2经锁存器提供。ADC0809时钟输 入由单片机ALE经2分频电路获得,若单片机时钟频率符合要求,也可不加2分频电路。
MOVX @DPTR,A ;启动A/D LP: JB P3.3,LP ;等待A/D转换结束
MOV DPTR,#0FF0lH ;A/D高8位数据口地址A0=0,R/ =l MOVX A,@DPTR ;读高8位数据 MOV @Rl,A ;存入片内RAM
INC R1 MOV DPTR,#0FF03H ;低4位数据口地址A0=1,R/ =1 MOVX A,@DPTR ;读低4位数据 MOV @R1,A ;存入片内RAM
ADC0809是28引脚DIP封装的芯片,各引脚功能如下: IN0~IN7(8条):8路模拟量输入,用于输入被转换的模拟电压。 D7~D0为数字量输出。 A、B、C:模拟输入通道地址选择线,其8位编码分别对应IN0~IN7,用于选择IN7~IN0上哪一路模拟电压 送给比较器进行A/D转换。
ALE:地址锁存允许,高电平有效。由低至高电平的正跳变将通道地址锁存至地址锁存器,经译码后控制八路 模拟开关工作。
②查询方式 A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。因此,可以用查询方式,软件测试EOC的
51单片机 R2R电阻网络 自制 DA AD 转换器 源代码及电路图
EA=1;///1
while(1)
{
if(SW_DA_AD==SW_DA_VALUE) //DA
{
TR1=0;//停止AD
DA_OUT=DA_value_now;
LED_DA=0;
LED_AD=1;
}
else//AD
{
TR1=1;//开启AD
DA_OUT=AD_value_now;
LED_DA=1;
{
unsigned char i;
Init_Max7219();
while(TRUE)
{
for(i=1;i<9;i++)
{
Write_Max7219(i,i);
}
}
} */
/***********************************************************************/
#define SW_DA_VALUE 0
#define SW_AD_VALUE 1
//AD转换定时器中断次数0~19
uchar T_AD_CONVERT_INT=0;
//DA值
float DA_value_float=5.0;
uchar DA_value_now=255; //单位为255分之1
//AD值
Write_Max7219(DECODE_MODE, 0x00); //Decode Mode Select D7~D0 1 B decode 0 No decode
Write_Max7219(SCAN_LIMIT, 0x03); //SCAN LIMIT 0~7 0xX0~0xX7
Write_Max7219(INTENSITY, 0x04); //Set Intensity 0xX0~0xXf
单片机原理与c51编程课件10第十章 模拟通道技术
11 A
10 B
9C
CD4051引脚图
7
一、数据采集系统的组成
(2)多路转换开关的扩展
当采样的通道比较多,可以将两个或两个以上的多路开关并联 起来,组成8×2或16×2的多路开关。下面以CD4051为例说明 多路开关的扩展方法。两个8路开关扩展成16路的多路开关的 方法。
{IN
模拟输入 (1 ~ 8) IN
保持模拟信号基本不变。
注:保持电容一般外接,其取值与采样频率和精度有关。 减小CH可提高采样频率,但会降低精度。
11
一、数据采集系统的组成
常用采样/保持器:随着大规模集成电路的发展,已生产 出各种各样的采样/保持器。如用于一般目的有AD582、 AD583 、 LF198/398 等 ; 用 于 高 速 的 有 THS-0025 、 THS-0060、THC-0030、THC-1500等;用于高分辨率 的有SHA1144、ADC1130等。
的频谱 f (t)的最高频率 F( j的) 两倍,即
max
s 2max
采样定理奠定了选择采样频率的理论基础,但对于 连续对象的离散控制,不易确定连续信号的最高频率。 因此,采样定理给出了选择频率的准则,在实际应用中 还要根据系统的实际情况综合考虑.。
10
一、数据采集系统的组成
(2)采样保持 采样保持电路:对变化的模拟信号快速采样,并在转换过程中
T型电阻网络
28
三、数/模转换
T型电阻网络D/A转换原理框图
VRE
IL3
IL2
IL1
IL0
D
C
B
T型电阻网络
F
R
I3 2R I2 2R I1 2R I0 2R
单片机: AD、DA转换接口技术
Single-Chip microcomputer
A/D、D/A转换接口技术
// 外部中断服务程序,设置输出信号状态标识,每按下一次键,状态标志加1 void Int0 () interrupt 1 { k++; t= 0; if(k = = 4) k=0; return; }
Single-Chip microcomputer
Single-Chip microcomputer
A/D、D/A转换接口技术
else if(k = = 3) // 发送三角波信号 { P1 = 0x08; // 三角波指示灯亮 if( t = = 0) i=0; // 设置上升标志 else if ( t = = 0xff) i =1; if ( i= =0) // 数据递增 { P3_6 = 1; P0 = t++; P3_6 = 0; Delay(1); } if(i= =1) { P3_6 = 1; P0 = t--; P3_6 = 0; Delay(1); } } } } // 数据递减
A/D、D/A转换接口技术
1 A/D、D/A转换
单片机应用系统有很多场合是用于信号的检测和对外部设计进 行控制,在很多时候是需要对模拟量进行采集,或者处理,这 些模拟量涉及温度、速度、压力、电流、电压等量。由于单片 机以及计算机的强大计算处理能力,可以将这些模拟量采集到 单片机或者计算机中进行处理。
任务分析及方案的制定
信号的产生可以通过D/A转换器DAC0832来实现,通过单片机向DAC0832 发送不同的数据,就可以使DAC0832输出相对应的模拟量信号,从而得到 期望得到的波形。 方波信号的产生 锯齿波的产生 三角波的产生
Single-Chip microcomputer
51单片机ad、da转换器[精制材料]
(1)分辨率(Res程ol)ut时io所n)需要的时间。
(2)偏移误差(O建ffs立e时tE间rro是r)D/A转换速率快慢的一个重 (3)精度(Accur要速ac参 率y)数越。低很。显不然同,型建号D立A时C间的越建大立,时转间换一
(4)转换速度(co般n从ve几rt个in纳g 秒sp到ee几d个) 微秒不等。若输出
(3)精度(Accuracy)
(4)转换速率/建立时间(converting speed)
(5)温度灵敏度(TemperatureSensitivity)
实操应用
3
二、DAC及其接口
(一)DAC介绍:数模转换,将一个二进制数字信号转换成与 此值成正比的模拟信号。
1.DAC结构:DAC芯片上集成有D/A转换电路和辅助电路。
第三节 A/D、D/A转换器
一、模拟接口概述
在实际系统中,单片机经常要对来自控制现场的各种模拟信 号进行采集和处理,如电压、电流等随时间连续变化的电量, 或者是温度、压力、流量等随时间连续变化的非电量。单片机 要接收这些模拟量,就要通过ADC来实现;如果单片机控制的 对象需要模拟量,则要用到DAC。
(5)温度灵敏度(形Te式m是p电er流at,urDeSAeCn的si建tiv立it时y)间是很短的; 若输出形式是电压,DAC的建立时间主
要是输出运算放大器所需要的响应时间。
实操应用
6
二、DAC及其接口
(一)DAC介绍:数模转换,将一个二进制数字信号转换成与 此值成正比的模拟信号。
1.DAC结构:DAC芯片上集成有D/A转换电路和辅助电路。
差一般可在D/A转换器外部用电位器
调节到实最操应小用 。
4
二、DAC及其接口
51单片机中如何对 AD和DA操作
51单片机开发板28课配套视频教程
PCF8591读取一个字节的程序
/************************************************************ * 函数名 : Pcf8591ReadByte * 函数功能 : 读取一个转换值 * 输入 : * 输出 : dat ************************************************************/ unsigned char Pcf8591ReadByte() { unsigned char dat; I2cStart(); I2cSendByte(READADDR);//发送读器件地址 dat=I2cReadByte();//读取数据 I2cStop(); //结束总线 return dat; }
D6
亚博科技
51单片机开发板28课配套视频教程
PCF8591的写入
第一个字节是器件地址和读写控制
第二个字节被存到控制寄存器,用于控制器件
功能。 第三个字节被存储到DAC数据寄存器,并使用 片上D/A转换器转换成对应的模拟电压。(所 以不输入D/A时,可以不用输入。)
亚博科技
51单片机开发板28课配套视频教程
亚博科技
51单片机开发板28课配套视频教程
第17讲
AD和DA实验
亚博科技
51单片机开发板28课配套视频教程
AD和DA的概念
AD转换的功能是把模拟量电压转换为数字量电压。 DA转换的功能正好相反,就是讲数字量转换位模拟 量。 分辨率的概念 一位数字量所表示的电压值。对于5V的满量程,采 用8位的DAC时,分辨率为5V/256=19.5的转换值被存为对应的8位二进制码,取
51单片机AD和DA实验(C语言)
51单片机AD和DA实验(C语言)//以下程序都是在VC++6.0 上调试运行过的程序,没有错误,没有警告。
//单片机是STC89C52RC,但是在所有的51 52单片机上都是通用的。
51只是一个学习的基础平台,你懂得。
//程序在关键的位置添加了注释。
/////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////以下是主文件main.c 的内容/************************************************************** **************** ** 实验名:AD和DA实验* 使用的IO :* 实验效果:LCD1602显示读取到的AD值* 注意:*************************************************************** **************** /#include#include"i2c.h"#include"lcd.h"#define WRITEADDR 0x90#define READADDR 0x91void Pcf8591SendByte(unsigned char channel);unsigned char Pcf8591ReadByte();void Pcf8591DaConversion(unsigned char value);/************************************************************** **************** ** 函数名: main* 函数功能: 主函数* 输入: 无* 输出: 无*************************************************************** **************** /void main(){unsigned int adNum[5];float value0;LcdInit();while(1){//--显示电位器电压--//Pcf8591SendByte(0); //发送电位器转换命令//--由于8591在第一次读取的时候是读取到的上次转换的结果--////--所以我们先读一次,只是读到的数据不做处理--//adNum[0]= Pcf8591ReadByte()*2;//将前一次转换结果读走//--在读走上一次转换结果之后,才开始启动下一次转换,需要一点时间--////--为了不浪费单片机的资源,让单片机空着,我们直接发送给我们下次--////--要读取的命令,做一些数据处理和显示当做延时--//LcdWriteCom(0x80+0x46); //发送显示坐标LcdWriteData('0'+adNum[3]/1000); //发送显示数据LcdWriteData('0'+adNum[3]%1000/100);LcdWriteData('0'+adNum[3]%100/10);LcdWriteData('0'+adNum[3]%10);Pcf8591SendByte(1); //发送热敏转换命令adNum[0]= Pcf8591ReadByte()*2;//读取电位器转换结果//--读取走了,上一次转换结果就是电位器的转换结果之后,热敏的转换开始--// //--我们继续做一些处理当延时。
单片机实训模拟量输入输出设计与实现
单片机可以通过编程实现各种数字和模拟信号 的处理和控制,具有灵活性和可编程性。
单片机的应用领域
智能仪表
01
单片机可以用于实现各种仪表的智能化,如温度计、压力计、
流量计等。
工业自动化
02
单片机可以用于控制各种工业设备的运行,如电机、阀门、灯
光等。
智能家居
03
单片机可以用于实现家居智能化,如智能照明、智能安防、智
能家电等。
单片机的发展历程
单片机的起源
单片机的发展可以追溯到20世纪70年代,当时出现了一 些简单的集成电路芯片,集成了少量的逻辑门电路,可以 用于简单的控制和计算。
8位单片机的普及
8位单片机是目前应用最广泛的单片机类型,它们具有丰 富的外设接口和强大的计算能力,可以满足各种应用需求 。
02 03
单片机
对数字信号进行处理和控制。
显示模块
将液位值实时显示出来,并设定液位 上下限,当液位超过或低于设定值时, 触发报警。
05
04
执行机构
根据单片机输出的控制信号,驱动电 动阀或水泵等执行机构,调节液位高 度。
06 总结与展望
单片机在模拟量输入输出方面的优势与局限性
低成本
单片机价格相对较低,适合于需要大量使用模拟量输入输出 功能的项目。
根据单片机型号和需求,设计合适的输出驱动电 路,包括功率放大、信号调制等部分。
数字模拟转换
利用DAC(数模转换器)将数字信号转换为模拟 信号,满足输出信号的精度和稳定性要求。
输出控制与调节
将转换后的模拟信号进行控制和调节,实现与外 部设备的通信和控制。
51单片机AD DA转换教程
时间应包括建立时间和上升(或下降)时 间两部分 ,它的最大值为
TTR(max) = tS + VO(max) / SR
其中 VO(max) 为输出电压的最大值 。
10. 2. 5 集成 DAC 0832及其应用
D/A转换器集成电路有多种型号。 下面仅以DAC0832为例来介绍集成电 路 D/A 变换器。
把量化的结果用代码 (二进制或二 - 十 进制 )表示出来,称为 “ 编码 ” 。
3. 采样 - 保持电路
RF
R1
ui
T
CF
+
uo
UL
当 UL为高电平时, MOS管T导通, ui 经电阻 R1和管T向电容 CF充电 。 当 UL为低电平时, MOS管T截止, 忽略各种漏电流,电容CF上的电压得以保持 。
Iout1
11
Iout2
DAC 0832 管脚分布图
D...... 7
八位 输入
寄存器
D0
(1)
ILE
&
CS 1
WR1
XFER
1
WR2
八位 DAC 寄存器
(2)
VCC
UR 八位 Rf B
A/D Iout1 变换器 Iout2
-
u +
+
o
AGND
DGND
运放需 要外接
ADC 0832 简化电路框图
D...... 7
I2 = 4I0
I3 = 8I0
I = I0 + I1 + I2 + I3
I
R/2
-
23R 22R 21R 20R
51单片机ad、da转换器
DAC电流输出1,当
① VCC电源可以在5-15V内变化。典型使用
DAC寄存器中为全1
时用15V电源。
时,输出电流最大,
② AGND为模拟量地线,DGND为数字量地 线,使用时,这两个接地端应始终连在一起。 ③ 参考电压VREF接外部的标准电源,VREF 一般可在+10V到—10V范围内选用。
当DAC寄存器中为全 0时,输出电流为0。 lout2为DAC电流输 出2,Iout2为一常数 与Ioutl之差,即
DI0 DI1
8位
DI2 输入
DI3 DI4
寄
DI5 DI6
存
DI7
器
8位
DAC 寄 存 器
8位
VREF
D/A Io utI2OUT2 +
转 Io utI1OUT1 -
换 器 RfRbfb
loutl+out2.=常数
电 平 输出
在实际使用时,总是
ILE
LE1
LE2
CS &
WR1+
DGND 将电流转为电压来使 用,即将Ioutl和 lout2加到一个运算
XFER
WR2 +
放大器的输入。
DAC0832的引脚
DAC0832是CMOS工艺,双列直插式20引脚。 ① VCC电源可以在5-15V内变化。典型使用 时用15V电源。 ② AGND为模拟量地线,DGND为数字量地 线,使用时,这两个接地端应始终连在一起。 ③ 参考电压VREF接外部的标准电源,VREF 一般可在+10V到—10V范围内选用。
A转换器的温度灵敏度约为满量程模拟 值变化的±50X10-6/oC。
3.与单片机接口形式
D/A转换器与单片机接口有2种,主要决定于转换器本身 是否带数据锁存器。有两类D/A转换器:一是不带锁存器的, 另一是带锁存器的。
第10章DA和AD转换技术
§1 D/A转换与D/A转换接口 D/A转换与D/A转换接口 转换与D/A
D/A转换器的性能指标 一、D/A转换器的性能指标 1、分辨率 分辨率是指D/A转换器能分辨的最小输出模拟增量, D/A转换器能分辨的最小输出模拟增量 分辨率是指D/A转换器能分辨的最小输出模拟增量,取 决于输入数字量的二进制位数。一个n位的DAC DAC所能分辨的 决于输入数字量的二进制位数。一个n位的DAC所能分辨的 最小电压增量定义为满量程值的2 最小电压增量定义为满量程值的2-n倍。 例如:满量程为10V DAC分辨率为10V× =39mv; 分辨率为10V 例如:满量程为10V 的8位 DAC分辨率为10V×2-8=39mv; 一个同样量程的16 DAC的分辨率高达10V× 16位 的分辨率高达10V 一个同样量程的16位DAC的分辨率高达10V×2-16=153uV 2、转换精度 转换精度和分辨率是两个不同的概念。 转换精度和分辨率是两个不同的概念。转换精 度是指满量程时DAC DAC的实际模拟输出值和理论值的接 度是指满量程时DAC的实际模拟输出值和理论值的接 近程度。 近程度。
②三角波程序 三角波由线性下降段和线性上升段组成,相应程序为: 三角波由线性下降段和线性上升段组成,相应程序为: ORG 1000H START: CLR A MOV R0 , #0FEH DOWN: MOVX @R0 , A ;线性下降段 INC A JNZ DOWN 若未完,则转DOWN ;若未完,则转 MOV A , #0FEH UP: MOVX @R0 , A ;线性上升段 DEC A JNZ UP 若未完, ;若未完,则UP SJMP DOWN 若已完, ;若已完,则循环 END
3、分辨率:转换器所能分辨的被测量的最小值。实 分辨率:转换器所能分辨的被测量的最小值。 际上分辨率就等于1LSB=1/2 满刻度值,其中n 际上分辨率就等于1LSB=1/2n×满刻度值,其中n为 A/D转换器的位数 分辨率通常用位数表示, 转换器的位数, A/D转换器的位数,分辨率通常用位数表示,如8位、 10位 12位等 例如对于一个10 位等。 10位转换器的分辨率 10位、12位等。例如对于一个10位转换器的分辨率 1/1024,显然,位数越多,分辨率就越高。 为1/1024,显然,位数越多,分辨率就越高。 4、量程: 指转换器的满刻度范围,亦即最大和最小 量程: 指转换器的满刻度范围, 模拟值之差 5、转换时间和转换率:完成一次A/D转换所需的时间。 转换时间和转换率:完成一次A/D转换所需的时间。 A/D转换所需的时间 转换率就是转换时间的倒数。 转换率就是转换时间的倒数。
MCS-51单片机的模拟量输入输出
MCS-51单片机的模拟量输入输出
ADC0809管脚图
20
ADC0809操作时序
MCS-51单片机的模拟量输入输出
21
ADC0809操作时序图
ADC0809编程要点
• 选通模拟量输入通道 • 发出启动信号 • 用查询或中断方法等待转换结束 • 初学建议采用延时方法等待转换结束 • 读取转换结果
MCS-51单片机的模拟量输入输出
4
1.A/D转换器的分类
根据转换原理可将A/D转换器分成两大类 (1)直接型A/D转换器(2)间接型A/D转换器。
MCS-51单片机的模拟量输入输出
5
常见的A/D转换器工作原理
• 逐次逼近式A/D转换器
– 将输入模拟信号与推测信号比较,调节推测信号 逼近输入信号,直至两者相等
MCS-51单片机的模拟量输入输出
15
ADC0809功能特点为:
– 分辨率为8位 – ADC0809最大不可调误差1LSB – 模拟输入电压范围为0~5V,单电源供电 – 锁存控制的8路模拟开关 – 转换速度取决于芯片的时钟频率,其范围
10~1280kHz,当频率为500kHz时,转换速度为 128us
8
量化过程引起的误差为量化误差,是由于有限位数字对模拟 量进行量化而引起的误差。量化误差理论上规定为1个单位分辨 率,提高分辨率可减少量化误差。
(3)转换精度 定义为一个实际ADC与一个理想ADC在量化值上的差。可用
绝对误差或相对误差表示。
绝对精度 在转换器中,任何数码所对应的实际模拟电压与
其理想电压值之差的最大值称为绝对精度 相对精度
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
技术凝聚实力 专业创新出版
10.3.1 DAC7614的内部结构
DAC7614的内部结构如图所示,由串行移位寄存器、4个 DAC寄存器和DAC和输出跟随器组成。
分辨率:8位; 供电电源:+5V~15V; 典型稳定时间:1us; 线性度:8~10bit; 低功耗:20mW; 温度漂移:0.0002% FS/°C; 适合多种单片机接口; 双缓冲、单缓冲与直通模式。
技术凝聚实力 专业创新出版
10.2.1 DAC0832的内部结构
DAC0832主要由两个8位寄存器和一个8位D/A转换器组成, 其内部结构原理图如图所示,使用两个寄存器的结构大 大简化了硬件接口电路设计的难度。
技术凝聚实力 专业创新出版
10.2.3 DA方式采用一个外界输入,可 以是地址线或者地址译码器输出,直接将DAC0832的相应控制引脚置为有 效,数据线上的数据字直通D/A转换器转换并输出,称为直接工作方式。
技术凝聚实力 专业创新出版
建立时间(tset)指输入数字量变化时,输出电压变化 到相应稳定电压值所需要时间。
一般用D/A转换器输入的数字量NB从全0变为全1时,输 出电压达到规定的误差范围(LSB/2)时所需时间表示。 D/A转换器的建立时间较快,单片集成D/A转换器建立时 间最短可达0.1μs以内。
技术凝聚实力 专业创新出版
技术凝聚实力 专业创新出版
10.1.4 D/A转换器的转换精度
选择D/A转换器时,需要考虑D/A转换器的主要技术指标, 下面简要介绍一下D/A转换器的技术指标,常用的D/A转 换器指标包括转换精度、转换速度和温度特性。
D/A转换器的转换精度通常用分辨率和转换误差来描述。 分辨率用于表征D/A转换器对输入微小量变化的敏感程
技术凝聚实力 专业创新出版
10.3 串行接口DAC7614数模转换器电路设计
DAC7614是BB公司(目前属于TI公司)生产的一款高性 能,四通道,12位精度,电压输出型D/A转换芯片,通 过串行接口即可通过DAC7614输出4路 独立的模拟量信 号。由于DAC7614是电压输出型的D/A转换芯片,因此其 电路设计更为简单。
技术凝聚实力 专业创新出版
10.1.1 权电阻式D/A转换器原理
权电阻D/A转换器实际上就是运放电路中十分经典的反向求和电路, 如图所示,为一4位二进制的权电阻D/A转换器的典型电路。电路由 权电阻、位切换开关、反馈电阻和运算放大器组成。
技术凝聚实力 专业创新出版
10.1.2 R-2R T型网络D/A转换器原理
由于基础的51系列单片机没有D/A转换器(其实大部分 单片机都不含D/A转换器),因此要在51单片机上实现 D/A转换功能,就必须外扩D/A转换电路。
技术凝聚实力 专业创新出版
10.1 D/A转换器的基本原理
D/A转换器把数字量转化为与其大小成正比的模拟量信 号。根据不同的转换原理,D/A转换器的种类很多,最 常见的两种转换器是权电阻式和T型电阻式D/A转换器等。 下面分别介绍目前常用的D/A转换器的基本原理。
PWM(Pulse Width Modulator)是脉宽调制的简称,通 常由一列占空比不同的矩形脉冲构成,是一种周期一定 而高低电平的占空比可以调制的方波。
技术凝聚实力 专业创新出版
10.4.2 基于单运放的阻容滤波D/A转换器
因为所有周期性的信号都可以分解成为不同频率成分正弦波的组合,按给 定占空度生成的PWM波形被输入到一个低通滤波器该滤波器,将消除PWM波 形的大部分高频成分。
如图所示为R-2R倒T型网络D/A转换器原理图,与R-2R T 型网络D/A转换器原理类似,通过D0~D3的数字开关的 输入,形成不同大小的输入电阻,从而从运放的输出端 输出需要的模拟量。
技术凝聚实力 专业创新出版
10.1.3 R-2R 倒T型网络D/A转换器原理
如图10.4所示为R-2R倒T型网络D/A转换器原理图,与R2R T型网络D/A转换器原理类似,通过D0~D3的数字开关 的输入,形成不同大小的输入电阻,从而从运放的输出 端输出需要的模拟量。
当需要多路模拟量同时输出工作时,DAC可以工作在双 缓冲模式。工作于双缓冲模式时,可以同时使用n个 DAC0832作为模拟信号同步输出。
如图所示为DAC0832双缓冲工作方式的电路图,两个 DAC0832的片选信号由P0.3和P2.6分别控制。工作时, 先将要输出的数据分别输入两个DAC0832的输入寄存器, 然后通过~XFER传送命令,使两个输入寄存器的数据被 同时送入DAC寄存器中,由DAC转换电路进行转换,在各 输出端就能获得同步的模拟信号。
度。其定义为D/A转换器模拟量输出电压可能被分离的 等级数。输入数字量位数愈多,输出电压可分离的等级 愈多,即分辨率愈高。
技术凝聚实力 专业创新出版
10.1.5 D/A转换器的转换速度
当D/A转换器输入的数字量发生变化时,输出的模拟量 并不能立即达到所对应的量值,它需要一段时间。通常 用建立时间和转换速率两个参数来描述D/A转换器的转 换速度。
技术凝聚实力 专业创新出版
10.2.2 电流电压转换接口
DAC0832 D/A转换器输出的模拟量是电流,有许多D/A转 换器的输出量都是电流,但是实际应用中常常需要用的 是模拟电压输出,因此在D/A转换器的后端还需要将电 流转换为电压输出。
如图10.9所示为常用的D/A转换器反相输出电流电压转 换接口,输出电压为Vout=-iR,当VREF为+5V时,输出电 压范围是0~-5V,当VREF为+10V时,输出电压范围是0~ -10V。
技术凝聚实力 专业创新出版
10.4 基于PWM的低成本数模转换器电路设计
对于精度要求不是太高,转换时间要求不是太严格的场 合,可以利用阻容滤波网络和一个运算放大器(例如 LM358、LM2902等)实现低成本的D/A转换器,利用PWM 调制波形实现D/A转换功能。
技术凝聚实力 专业创新出版
10.4.1 PWM简介
10.5 DAC0832程序设计
下面以基于AT89S51单片机的D/A转换器扩展为基础,具 体讲解D/A转换在实际中的各种应用。通过各种案例的 学习,能够掌握各种D/A转换的应用及其软件设计方法。
DAC0832是低成本的8位精度D/A转换器,在很多精度要 求不高的工业场合有广泛的应用,在本节中先介绍 AT89S51扩展DAC0832的软件设计。
Vout1Vout2 71 U3BLM358AMU3ALM358AM DD AVCCAVCC NN GG 8484 H12 K R802 5632 VREF f u AVCCAVCC F0 u0 VREFVREFC721Cp31 120120 8911289112 DD DD VCC RFBRFB VV VREFVREF IOUT1IOUT2IOUT1IOUT2 C710.1uF 5687 DDDD NNNN SS T C GDI7DI6DI5DI4DI0CWR1GDI3DI2DI1XFERWR2ILEGDI7DI6DI5DI4DI0CWR1GDI3DI2DI1XFERWR2ILE ?? U N UDAC0832LCJUDAC0832LCJ SEL O TRIM 034567123456789034567123456789 D 1111111111111111 N D G NC C691000uF/16V N A ITEMPGN + D DI2DI3DI4DI5DI6DI7DI8DI9DI2DI3DI4DI5DI6DI7DI8DI9URPAD780BN N AVCCAVCC G 2341 A Rx3Res2 H u 0 f 9 0 n L1 0 0 Rx2Res2 D411N5822 Cp11 VCC Rx1Res2 f u Cp21 42 VCC 3 C0.1u D P0_1P0_2P0_3P0_4P0_5P0_6P0_7P0_0P1_0P1_1P1_2P1_3P1_4P1_5P1_6P1_7P2_0P2_1P2_2P2_3P2_4P2_5P2_6P2_7 D N N G OUTPUT G 12345678234567890 AVCCA 1234567822222222333333334 FEEDBACK D 4.7uFC424 P1.2P1.3P1.4P1.5P1.6P1.7 VCC N +VINGON/OFF P1.0/T2 P2.0/A8P2.1/A9 U11LM2576S-5.0 P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15 P0.7/AD7P0.6/AD6P0.5/AD5P0.4/AD4P0.3/AD3P0.2/AD2P0.1/AD1P0.0/AD0 P1.1/T2EX 135 0.1uFC44Cap 0.01uFC434Cap RSTP3.0/RxDP3.1/TxDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1VSSPSENALEEA/VPP 2 UAT89S51C700.1uF/50V 901234567890901 11111111112233 HH 23 uu D 1LFerriteBead1LFerriteBead N ALEP3_1P3_2~INT1P3_4P3_5P3_6P3_7P3_8 G D M N 4 CY22VCCG pp 52 00 VCC C3C3 D V N 2 G1 D N G RESET k SW-PBSW-PB 0 RST R151 D N VCC G u 7 C104
如图所示为R-2R T型网络D/A转换器原理图,电路由4路 R-2R电阻网络,一个运算放大器和一个反馈电阻R组成, 这种转换电路与权电阻D/A转换电路的区别主要在于电 阻求和网络的结构不同,它采用了分流原理实现对输入 位数字量的转换。