用dac0832产生正弦波的设计
更新时间:2024-04-21 05:29:01 阅读量: 综合文库 文档下载
摘要 : DAC 转换器是一种将数字量转换成模拟量的器件,本论文简要介绍模数
转换器 DAC0832 的工作原理和芯片结构,并利用模数转换器 DAC0832 输出正弦 波
进一步分析输出波形的模拟失真度。
关键词 : 模数转换器 DAC0832 ,正弦数据区,模拟失真度, FFT 变换。 引言:
1 . 简要模数转换器 DAC0832 的介绍
DAC 转换器是一种将数字量转换成模拟量的器件,其特点是接收、保持和转 换
的是数字信息,不存在随温度和时间的漂移问题,因此电路的抗干扰性能较好。
DAC0832 是 8 位分辨率的 D/A 转换集成芯片,它具有价格低廉、接口简单及 转
换控制容易等特点。它由 8 位输入锁存器、 8 位 DAC 寄存器、 8 位 DIA 转换电路
及转换控制电路组成,能和 CPU 数据总线直接相连,属中速转换器,大约在 1u s
内将一个数字量转换成模拟量输出。 1.1 DAC0832 的结构如下 :
D0 ~ D7 : 8 位数据输入线, TTL 电平,有效时间应大于
90ns( 否则锁存器的 数 据会出错 ) ;
ILE :数据锁存允许控制信号输入线,高电平有效; CS :片选信号输入线(选通数据锁存器),低电平有效;
WR1 :数据锁存器写选通输入线,负脉冲(脉宽应大于 500ns )有效。由 ILE 、
CS 、 WR1 的逻辑组合产生 LE1 ,当 LE1 为高电平时,数据锁存器状态随输入数据
线变换, LE1 的负跳变时将输入数据锁存;
XFER :数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于 500ns ) 有效;
WR2 : DAC 寄存器选通输入线,负脉冲(脉宽应大于 500ns )有效。由 WR1 、 X FER
的逻辑组合产生 LE2 ,当 LE2 为高电平时, DAC 寄存器的输出随寄存器的输入而
变化, LE2 的负跳变时将数据锁存器的内容打入 DAC 寄存器并开始 D/A 转换。
IOUT1 :电流输出端 1 ,其值随 DAC 寄存器的内容线性变化;IOUT2 :电流输出端 2 ,其值与 IOUT1 值之和为一常数; Rfb :反馈信号输入线,改变 Rfb 端外接电阻值可调整转换满量程精度;
Vcc :电源输入端, Vcc 的范围为 +5V ~ +15V ;
VREF :基准电压输入线, VREF 的范围为 -10V ~ +10V ; AGND :模拟信号地 DGND :数字信号地
1.2 DAC0832 的引脚图和内部结构 1.3 DAC0832 的三种工作方式 1 .直通方式
直通方式就是使 DAC0832 内部的两个寄存器(输入寄存器和 DAC 寄存器)
处于不锁存状态,数据一旦到达输入端 DI7 ~ DI0, 就直接送入 D/A 转换器,被转
换成模拟量。当 ILE 为高电平, CS 和 WR 1 ﹑ WR 2 和 XFER 端都接数字地,这时
锁存信号 LE 1 ﹑ LE 2 均为高
电平,输入寄存器和 DAC 寄存器均处于不锁存状态,即直通方式。2 .单缓冲方式
单缓冲方式就是使两个寄存器中的一个处于缓冲方式,另一个处于锁存方式,
数据只通过一级缓冲器送入 D/A 转换器。通常的做法是将和 XFER 均接地,使
DAC 寄存器处于直通方式,而把 ILE 接高电平,接端口地址译码信号, WR 1 接
CPU 系统总线的 IOW 信号,使输入寄存器处于锁存方式。单缓冲方式只需执行
一次写操作即可完成 D/A 转换。一般不需要多个模拟量同时输出时,可采用单 缓冲方式。 3 .单缓冲方式
单缓冲方式就是使两个寄存器均处于锁存方式,数据要经过两级锁存(即两 级
缓冲)后再送入 D/A 转换器,这就是说,要执行两次写操作才能完成一次 D/A 转
换。只要将 ILE 接高电平, WR 1 和 WR 2 接 CPU 的 IOW , CS 和 XFER 分别接两
个不同的 I/O 地址译码信号即可。
图中的 Rfb 是内部电阻,是为外部运算放大器提供的反馈电阻,用以提供适当
的输出电压, Vref 端是由外电路为芯片提供的参考电源,电压范围在 -10V ~
+10V 。另外, DAC0832 为电流输出型 DAC ,使用时需外接运算放大器,芯片
的电源电压最好 工作在 +15V 。 2 利用 DAC0832 产生正弦波 2.1 设计出原理图
2.2 编写程序和必要说明 1 ) CODE SEGMENT ASSUME CS:CODE DAPORT EQU 0070H CONTPORT EQU 00DFH DATAPORT EQU 00DEH DATA EQU 0500H
START: JMP DACONTORLDACONTORL:CALL FORMAT CALL LEDDISP MOV DX,DAPORT
SS2 : MOV AL, 8 0H ;初始值 MOV BX , 0H DACON1: OUT DX,AL MOV CX, 0008 H ; INC BX
CMP BX,32 ; 比较一个周期是否结束 JZ SS2
DACON2: LOOP DACON2
MOV AL,CS:[BX+OFFSET SINDATA] ; 正弦取值 JMP DACON1
LEDDISP:MOV AL,90H MOV DX,CONTPORT
OUT DX,AL
MOV BYTE PTR DS:[0600H],00 H LED1: CMP BYTE PTR DS:[0600H],07H JA LED2
MOV BL,DS:[0600H] MOV BH,0H
MOV AL,CS:[BX+DATA] MOV DX,DATAPORT OUT DX,AL
ADD BYTE PTR DS:[0600H],01H JNZ LED1 LED2: RET
FORMAT: MOV BX,0
MOV WORD PTR DS:[BX+0500H],4006H ADD BX,2
MOV WORD PTR DS:[BX+0500H],4040H ADD BX,2
MOV WORD PTR DS:[BX+0500H],4F5BH ADD BX,2
MOV WORD PTR DS:[BX+0500H],3F7FH ADD BX,2 RET
SINDATA: DB 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh ; 正弦波数据数据区
DB 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96h DB 80h,66h,4eh,38h,25h,15h,09h,04h DB 00h,04h,09h,15h,25h,38h,4eh,66h CODE ENDS END START
2 )说明上面程序中的正弦波数据区的数据共有 32 个,通过两个公式算出。当
0<=x<=8*pi/16 时,通过 128+127*sin(x) 计算数据,当 24*pi/16<=x<=2*pi 时 ,
通过 127* 【 1+sin(x) 】来计算数据, pi/2 到 3*pi/2 区间的数据可对称写出。 3 计算模拟失真度 3.1 模拟失真度的定义
模拟失真度一般由基波剔除法和频谱分析法来计算,本论文采用频谱分析法 来
计算。基本方法就是通过傅里叶变换,产生出信号的频谱图,根据频谱含量 Cn , 计算出失真度。
基于 FFT 的失真度仪,采用频域分析方法,通过计算傅立叶系数, C1 、 C2 … Cn ,最后得到失真度基于 F FT
的 失真度仪,采用频域分
析方法,通过计算傅立叶系数, C1 、 C2 … Cn ,最后得到失真度
3.2 用 MATLAB 软件绘出实际频谱的程序如下 :
x=[0,0.975,1.913,2.778,3.535,4.157,4.619,4.904,5,4.904,4.619,4.157,3. 535,2.778,1.913,0.975,0,-0.975,-1.913,-2.778,-3.535,-4.157,-4.619,- 4.904,-5,-4.904,-4.619,-4.157,-3.535,-2.778,-1.913,-0.975,0] n=0:31; Xk=fft(x);
magXk=abs(x(1:17)); k1=0:1:16;w1=2*pi/32*k1;
subplot(212);stem(w1,magXk);title('samples of DTFT magnitude'); xlabel('freuency in pi'); axis([0,pi,0,100]);
3.3 正弦函数的时域图形、理想频谱和实际频谱理想连续波形 正弦序列
理想频谱结论:本设计产生的信号模拟失真度位 12.5 % . 可知失真度较大,可采取的
具体措施 为一个周期取更多的点, 0832 最多抽 256 个有效点数。
正在阅读:
用dac0832产生正弦波的设计04-21
小学语文第二册《识字4》教学设计精讲03-08
邯郸市建设局关于印发关于进一步加强廉政风险防控深化权力运行03-09
合唱艺术与团结协作精神的培养09-07
毕业论文 - 全面质量管理在企业中应用(张奉志) - 图文04-25
介入放射学试题及答案10-18
我要夸夸他作文400字07-09
“十三五”重点项目-利用沼气开发电肥气热联产项目节能评估报告(04-06
中国违约市场的新格局及应对课后测试03-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 正弦
- 产生
- dac0832
- 设计
- VC++6.0上机指导 - C语言实验讲义
- 2019浼氳?缁х画鏁欒偛閫夎?鍙婄瓟妗
- 沙子乡红星村步行栈道项目步行栈道项目实施方案
- 电力系统简答题
- 安全防范措施落实
- 实验3 用三线摆测物体的转动惯量(new)
- 神经病学习题集
- 2015福建农村信用社招聘会计知识练习题(四十五)
- 002015年节后复工调度室培训计划
- 金属学与热处理总结
- 设备点检制
- 月半小夜曲
- 石油化工及精细化工制造业发展面临的困难和机遇
- c++补考题目(附答案)
- 铁路旅客运输安全检查管理办法(交通运输部令2014年第21号)2015
- 关于集中开展社会矛盾排查化解和治安重点地区
- 制药工程实习目的
- 观后感-The social network
- 留观、入院、出院、转科、转院制度及流程
- 原核诱导表达