第7章 DA转换器的应用_第1页
第7章 DA转换器的应用_第2页
第7章 DA转换器的应用_第3页
第7章 DA转换器的应用_第4页
第7章 DA转换器的应用_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

第7章DA转换器的应用知识与技能目标知识目标:

1、掌握D/A转换的基本知识。2、掌握DAC0832与单片机的硬件连接。3、掌握D/A转换器的程序设计方法。技能目标:1、掌握数模转换芯片的程序调试方法。2、掌握D/A转换器硬件电路调试方法。

2工作任务

本项目的工作任务是设计一个简易低频信号发生器,要求能输出0.1~50Hz的正弦波、三角波和方波信号,其中正弦波和三角波信号可用按键选择输出,频率可通过加减键调节。3D/A转换器数字量转换成模拟量的过程称为数/模转换(D/A转换),实现D/A转换的器件叫数/模转换器(D/A转换器)。

47.1.1D/A转换的工作原理在进行转换时首先将单片机输出的数字信号传递到数据寄存器中,然后由模拟电子开关把数字信号的高低电平变成对应的电子开关状态。当数字量某位为“1”时,电子开关将基准电压VR接入电阻网络的相应支路,若为“0”时,则将该支路接地。各支路的电流信号经过电阻网络加权后,由运算放大器求和并转换成电压信号,作为D/A转换器的输出。

D/A转换器的基本结构57.1.1D/A转换的工作原理D/A转换器的基本原理-是用电阻解码网络将N位数字量逐位转换成模拟量并求和。I2I22I23I24I25I26I27I2867.1.1D/A转换的工作原理7由于数字量的不连续性,同时D/A转换器进行转换及单片机输出数据都需要一定的时间,因此输出的模拟量随时间的变化曲线是呈阶梯状不连续的曲线。Δt越小输出越光滑,可以近似认为是连续的。7.1.1D/A转换的工作原理87.1.2D/A转换器的性能指标分辨率是指输入数字量的最低有效位(LSB)发生变化时,所对应的输出模拟量(常为电压)的变化量。它反映了输出模拟量的最小变化值。分辨率与输入数字量的位数有确定的关系,可以表示成FS/。FS表示满量程输入值,n为二进制位数。对于5V的满量程,采用8位的DAC时,分辨率为5V/256=19.5mV;当采用12位的DAC时,分辨率则为5V/4096=1.22mV。显然,位数越多分辨率就越高。9建立时间

从输入数字量到转换为模拟量输出所需的时间,反映D/A转换器的速度快慢程度,一般电流型D/A转换器比电压型D/A转换器快。转换精度

在D/A转换器转换范围内,输入数字量对应的模拟量实际输出值与理论值之间的最大误差,主要包括失调误差、增益误差和非线性误差等。7.1.2D/A转换器的性能指标107.28位D/A转换器DAC0832DAC0832是使用非常普遍的8位D/A转换器,可以直接与单片机接口。DAC0832以电流形式输出,当需要转换为电压输出时,可外接运算放大器。DAC0832主要特性:分辨率8位;电流建立时间1μS;数据输入可采用双缓冲、单缓冲或直通方式;输出电流线性度可在满量程下调节;逻辑电平输入与TTL电平兼容;单一电源供电(+5V~+15V);低功耗,20mW。11DAC0832由8位输入寄存器,8位D/A转换器及逻辑控制单元组成。D/A转换器采用28=256级的倒T型R-2R电阻译码网络,基准电压Vref,D/A转换器输出为电流,经过一个外接的运算放大器转换为电压输出。7.2.1

DAC0832引脚及内部结构12输入允许数据传送控制输入寄存器D/A转换电路&&&LE23AGND10DGNDRfLE1图1DAC0832电路结构图20Vcc

812119VREFIOUT2IOUT1RfbCS

1WR1

2WR2

17XFER18数据输入端ILE19

片选写入基准电压D713D614D515D416D34D25D16D07输出电流8位数据寄存器DAC寄存器137.2.2DAC0832的工作方式直通方式将输入锁存器和DAC寄存器的有关控制信号都置为有效状态,当数字量送到数据输入端时,不经过任何缓冲立即进入D/A转换器进行转换,这种方式一般不用于单片机控制系统。单缓冲器方式将输入锁存器或DAC寄存器的任意一个置于直通方式而另一个受CPU控制,当数字量送入时只经过一级缓冲就进入D/A转换器进行转换,这种方式适用于只有一路模拟量输出或有几路模拟量输出但不要求同步的系统。双缓冲方式是输入锁存器和DAC寄存器分别受CPU控制,数字量的输入锁存和D/A转换分两步完成。当数字量被写入输入锁存器后并不马上进行D/A转换,当CPU向DAC寄存器发出有效控制信号时,才将数据送入DAC寄存器进行A/D转换,这种工作方式适用于多路模拟量同步输出的场合。147.2.3DAC0832的输出方式

单极性输出双极性输出图中若参考电压VREF为5V,则单极性输出电路中电压Vout=0~+5V;双极性输出电路中电压VA=0~+5V,Vout=5~+5V。15

7.3.1DAC0832与单片机的接口—单缓冲允许锁存信号ILE接+5V,片选信号与单片机地址线P2.7相连,数据传送控制信号和写信号接地,写信号与单片机的写信号线相连,输入锁存器地址为7FFFH,DAC寄存器处于直通方式,当CPU对DAC0832执行一次写操作,就控制输入锁存器打开,将数据送入D/A转换器进行转换。

例1:利用图示电路,在Vout端产生锯齿波信号输出。START:MOVDPTR,#7FFFH ;送DAC0832的地址MOVA,#00H ;装入待转换的数据LOOP:MOVX@DPTR,A ;启动A/D转换INCAAJMPLOOP问题:如何实现方波信号输出。16

7.3.2DAC0832与单片机的接口—双缓冲允许锁存信号ILE接+5V,两个写信号和都接到单片机的写信号线上,数据传送控制信号都接到单片机P2.7上,用于控制同步转换输出,分别接单片机P2.5和P2.6上,实现输入锁存控制,DAC0832输入锁存器的地址分别为DFFFH和BFFFH,DAC寄存器具有相同的地址7FFFH。17例2利用图示电路实现两路模拟量同步输出。参考程序如下:MOV DPTR,#0DFFFH;送DAC0832(1)的地址MOV A,#data1 MOVX @DPTR,A;将data1送DAC0832(1)的输入锁存器MOV DPTR,#0BFFFH;送DAC0832(2)的地址MOV A,#data2 MOVX @DPTR,A ;将data 2送DAC0832(2)的输入锁存器MOV DPTR,#7FFFH ;送两片DAC0832的DAC寄存器地址MOVX @DPTR,A ;进行两路数据同步转换输出

DAC0832与单片机的接口—双缓冲187.4.1工作任务本项目的工作任务是设计一个简易低频信号发生器,要求能输出0.1~50Hz的正弦波、三角波和方波信号,其中正弦波和三角波信号可用按键选择输出,频率可通过加减键调节。19低频信号发生器设计与制作

由于输出信号的频率较低,可使用单片机作为控制器产生各种波形,对于方波,可以直接由51单片机的端口输出,而正弦波和三角波可以由DAC0832进行转换实现。20

7.4.2低频信号发生器硬件制作

217.4.3低频信号发生器的软件设计低频信号发生器由主程序、定时器中断子程序等部分组成。主程序主要包括初始化程序、键盘扫描程序、及频率值修改程序组成。初始化程序进行定时器初值、中断允许等设置。键盘扫描程序主要对三个按键进行检测,以判断是否要进行频率调整及波形调整。频率值修改程序主要进行定时器定时值的加减操作。

定时器中断子程序主要进行方波输出及正弦波、三角波的输出。方波的输出可以直接在定时溢出中断时,对输出端口取反即可实现。对正弦波和三角波,为了避免复杂的程序设计算法,设计了正弦波和三角波的波形数据表,将一个周期的正弦波或三角波平均分解为256个数据点,在进行波形输出时,将波形数据表中的值依次查出,并送入DAC0832中进行转换,得到正弦波或三角波。

22流程图23参考程序

SINP DATA 30H ;正弦波查表指针 TH0D DATA 32H ;定时器初值存放(高8位) TL0D DATA 33H ;定时器初值存放(低8位) ORG 0000H LJMP START ORG 000BH LJMP INTT0 ORG 0060HSTART:MOVSP,#70H MOVSINP,#00H MOV TMOD,#11H MOV TH0D,#0FFH;定时器初值,决定波形频率

MOV TL0D,#00H MOV TH0,TH0D MOV TL0,TL0D

24 MOV DPTR,#LIST ;设置表首初值,即输出正弦波

SETB ET0 ;开中断

SETB EA SETB TR0 ;启动定时器MAIN:JNB P2.0,INCKEY ;按键扫描

JNB P2.1,DECKEY JB P2.2,L1 MOVDPTR,#LIST1 ;将表首改为三角波码表首地址

SJMP L2L1: MOV DPTR,#LIST ;将表首改为正弦波码表首地址L2: ORL PCON,#01H LJMP MAIN25INCKEY:LCALLDL10MS ;按键功能,输出频率增大

JB P2.0,MAIN ;等待按键松开 MOV A,TL0D CJNE A,#0FFH,INC1 LJMP MAININC1: INC TL0D LJMP MAINDECKEY:LCALLDL10MS ;按键功能,输出频率减小 JB P2.1,MAIN MOV A,TL0D CJNE A,#00H,DEC1 LJMP MAINDEC1: DEC TL0D ;定时器初值减小

LJMP MAININTT0:PUSH ACC ;定时器T0中断程序 CPL P2.7 ;方波输出,作辅助功能用26 MOV TH0,TH0D MOV TL0,TL0D MOV A,SINP MOVC A,@A+DPTR MOV P1,A;正弦波从P1口输出

INC SINP POP ACC RETIDL512:MOV R7,#0F

温馨提示

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

评论

0/150

提交评论