




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2D/A 接口实验一、实验目的学习D/A 转换原理掌握MAX504 D/A 转换的使用方法掌握不带有D/A 的CPU 扩展D/A 功能的主要方法了解D/A 驱动程序加入内核的方法二、实验内容学习 D/A 接口原理,了解实现 D/A 系统对于系统的文档,掌握其使用方法。硬件要求。阅读MAX504三、预备知识有C 语言基础掌握在Linux 下常用编辑器的使用掌握 Makefile 的编写和使用掌握Linux 下的程序编译与交叉编译过程四、实验设备及工具硬件:UP-NETARM2410-S实验、PC机Pentium 500以上, 硬盘10G以上。ARM-LINUX开发环境:PC机操作系统REDHIN
2、UX 9.0五、实验原理1、D/A 转换器D/A 转换器的电路无太大差异,一般按输出是电流还是电压、能否作乘法运算等进行分类。大多数D/A转换器由电阻阵列和n个电流开关(或电压开关)切换开关,产生比例于输入的电流(或电压)。按数字输入 值电压输出型(如TLC5620)电压输出型 D/A 转换器虽有直接从电阻阵列输出电压的,但一般采用内置输出放大器以低阻抗输出。直接输出电压的器件仅用于高阻抗负载,由于无输出放大器部分的延迟,故常作为高速D/A转换器使用。电流输出型(如THS5661A)电流输出型 D/A 转换器很少直接利用电流输出,大多外接电流电压转换电路得到电压输出,后者有两种方法:一是只在输
3、出引脚上接负载电阻而进行电流电压转换,二是外接运算放大器。用负载电阻进行电流电压转换的方法,虽可在电流输出引脚上出现电压,但必须在规定的输出电压范围内使用,而且由于输出阻抗高,所以一般外接运算放大器使用。此外,大部分CMOS DA转换器当输出电压不为零时不能正确动作,所以必须外接运算放输变补大器。当外接运算放大器进行电流电压转换时,则电路基本上与内置放大器的电压出型相同,这时由于在D/A转换器的电流建立时间上加入了运算放入器的延迟,使响应慢。此外,这种电路中运算放大器因输出引脚的偿。电容而容易起振,有时必须作相位乘算型(如AD7533)D/A 转换器中有使用恒定基准电压的,也有在基准电压输入上
4、加交流信号的,后者由于能得到数字输入和基准电压输入相乘的结果而输出,因而称为乘算型D/A转换器。乘算型D/A 转换器一般不仅可以进行乘法运算,而且可以作为使输入信号数字化地衰减的衰减器及对 输入信号进行调制的调制器使用。一位D/A 转换器一位 D/A 转换器与前述转换方式全然不同,它将数字值转换为脉冲宽度调制或频率调制的输出,然后用数字滤波器作平均化而得到一般的电压输出(又称位流方式),用于音频等场合。2、D/A 转换器的主要技术指标分辩率(Resolution)指最小模拟输出量(对应数字量仅最低位为“1”)与最大量(对应数字量所有有效位为“1”)之比。建立时间(Setting Time)是将
5、一个数字量转换为稳定模拟信号所需的时间,也可以认为是转换时间。D/A 中常用建立时间来描述其速度,而不是A/D中常用的转换速率。一般地,电流输出D/A建立时间较 短,电压输出 D/A 则较长。 其他指标还有线性度(Linearity),转换精度,温度系数/漂移。3、MAX50410 位D/A 转换器的特点由单个5V 电源供电电压输出缓冲2.048V 参考电压INL= 1 LSB(MAX)2电压不随温度变化 可变的输出范围:0VVDD,VSSVDD 上电复位串行输出 其各个管脚的功能如表2.5.1所示:表 2.5.1 管脚定义管脚名称功能1Oipolar offset/gain resistor
6、2DINSerial data input3CLRClear. Asynchronously sets DAC register to all 0s.4SCLKSerial clock input5CSChip select, active low6DOUTSerial data output for daisy-chaining7DGNDDigital ground8AGNDog ground9REFINReference input10REFOUTReference output, 2.048V. Connect to VDD if not used.11Vegativeer supply
7、4、MAX504 在开发板上的连接MAX504在开发板中的连接如图2.5.1所示:图 2.5.1 Max504 的连接上图中,RFB连接VOUT、OFF连接AGND,使得输出电压范围为02VREFIN,即04.069V。时钟和输入、输出信号分别与同步串口的时钟、发送和接收端相连。可以通过WriteSDIO(data)函数(Uhal.h)向MAX504发送数据。发送数据时要注意,MAX504可接受12位的数据,但低两位不起作用。WriteSDIO(data)函数一次只能发送8位的数据,所以 发送数据时应先将数据两位,然后先发送高八位,再发送低八位数据。CLR 和 CS 分别 由MAX504_CL
8、EAR()和MAX504_ENABLE()、MAX504_DISABLE()函数(Max504.c)控制。12VOUTDAC output13VDDitiveer supply14RFBFeedback resistor六、程序分析程序流程图如图2.5.2:图 2.5.2 实验程序流程图具体程序代码da_main.c如下:/*by zou jian guo*2004.9.27 14:30*the driver is s3c2410_da_max504.c in drivers/char*/ #include #include #include #include #define DA0_IOCT
9、RL_WRITE0 x10#define DA1_IOCTRL_WRITE0 x11#define DA_IOCTRL_CLR0 x12#define Max504_FULL4.096f s icda_fd = -1;char *DA_DEV=/dev/exio/0raw;void Delay(t)i; for(;t0;t-)for(i=0;i400;i+);/*/ main(argc, char *argv)float v;unsignedvalue;/char *da_dev;/unsignedda_num=0; if(argc 3)pr f(n);pr f(Error parameter
10、n); pr f(Input as:n);pr f(./ad_main da_id numn);pr f(da_id: select betn 0 and 1n); pr);pr return 1;sscanf(argv2, %f,&v); if(vMax504_FULL)pr f(ut must betn: 0 to %fn, Max504_FULL); return 1;value=(unsigned)(v*1024.0f)/Max504_FULL); if(da_fd=open(DA_DEV, O_WRONLY)0)pr f(Error opening /dev/exio/0raw de
11、vicen); return 1;if(strcmp(argv1,0) = 0)ioctl(da_fd, DA_IOCTRL_CLR, 0);/clear da. ioctl(da_fd, DA0_IOCTRL_WRITE, &value);else if (strcmp(argv1,1) =0) ioctl(da_fd,/clear da.DA_IOCTRL_CLR, 1);七、实验步骤1、阅读理解源码进入/arm2410s/exp/basic/05_da目录,使用vi编辑器或其他编辑器阅读理解源代码2、编译应用程序运行make产生da可执行文件da_main3、调试切换到终端窗口,使用NF
12、S mount开发主机的/arm2410s到/host目录,然后进入/host/exp/05_da/drivers目录,用insmod exio.o命令D/A驱动,并用 lsmod命令查看是否已经。rootzxt /# cd /arm2410s/exp/basic/05_da/ rootzxt 05_da# makearmv4known-linux-gcc-c -o da_main.o da_main.c armv4known-linux-gcc da_main.o -o da_main rootzxt 05_da# lsda_mainda_main.cda_main.odocdriversM
13、akefiles3c44b0-spi h#if 0ioctl(da_fd, DA_IOCTRL_CLR, 0);/clear da. for(;)ioctl(da_fd, DA0_IOCTRL_WRITE, &value); Delay(500);#endif close(da_fd);pr f(Current Voltage is %f vn, v); return 0;进入/host/exp/basic/05_da目录,运行./da_main,观察运行结果的正确性。在输入 ./da_main后会出现下面的提示信息。这是由于没有指定参数造成的,它的格式为 ./da_main da 的 id
14、号 数字,我们可以通过选择0 或1来决定输出到开发板上的哪个D/A接口;同时还需要在0.04.096V 之间来选择一个输出电压。下面的例子是用了开发板上的DA0 并且输出1V的电压,可 以使用万用表对其进量。调试结果:/host/exp/basic/05_da./da_main 0 1 Current Voltage is 1.000000 v/host/exp/basic/05_da./da_mainError parameter Input as:./ad_main da_id numda_id: select betn 0 and 1 num: range 0.0 4.096注意:卸载模
15、块可以使用rmmod 命令,以本实验为例,卸载方法如下:/host/exp/basic/05_darmmod exio/mnt/yaffscd /host/exp/basic/05_da/ /host/exp/basic/05_dacd drivers/ /host/exp/basic/05_da/driversinsmod exio.o Using exio.o /host/exp/basic/05_da/driverslsmodModuleSizeUsedNot ta edexio23840 (unused)i2c-tops2141040 (unused)八、思考题D/A转换器的分类。电压
16、输出型电压输出型 D/A 转换器虽有直接从电阻阵列输出电压的,但一般采用内置输出放大器以低阻抗输出。直接输出电压的器件仅用于高阻抗负载,由于无输出放大器部分的延迟,故常作为高速 D/A 转换器使用。电流输出型电流输出型 D/A 转换器直接输出电流,但应用中通常外接电流一电压转换电路得到电压输出。电流一电压可以直接在输出引脚上连接一个负载电阻,实现电流一电压转换。但多采用的是外接运算放大器的形式。另外,大部分 CMOS D/A 转换器当输出电压不为零时不能正确动作,所以必须外接运算放大器。由于在 D/A 转换器的电流建立时间上加入了外接运算放入器的延迟,使 D/A 响应变慢。此外,这种电路中运算
17、放大器因输出引脚的(3)乘算型电容而容易起振,有时必须作相位补偿。D/A 转换器中有使用恒定基准电压的,也有在基准电压输入上加交流信号的,后者由于能得到数字输入和基准电压输入相乘的结果而输出,因而称为乘算型 D/A 转换器。乘算型 D/A 转换器一般不仅可以进行乘法运算,而且可以作为使输入信号数字化地衰减的衰减器及对输入信号进行调制的调制器使用。另外,根据建立时间的长短,D/A 转换器可分为以下几种类型:1. 低速 D/A 转换器,建立时间100s;2.3.4.5.中速 D/A 转换器,建立时间为 10100s;高速 D/A 转换器,建立时间为 110s;较高速 D/A 转换器,建立时间为 1
18、00ns1s;速 D/A 转换器,建立时间为100ns。根据电阻网络的结构可以分为1.2.3.4.权电阻网络 D/A 转换器T 型电阻网络 D/A 转换器 倒 T 型电阻网络 D/A 转换器权电流 D/A 转换器等形式2 D/A转换器的主要技术指标。分辨率: 指最小输出电压(对应的输入数字量只有最低有效位为“1”)与最大输出电压(对应的输入数字量所有有效位全为“1”)之比。线性度用非线性误差的大小表示 D/A 转换的线性度。并且把理想的输入输出特性的偏差与满刻度输出之比的百分数定义为非线性误差。转换精度D/A 转换器的转换精度与 D/A 转换器的集成的结构和接口电路配置有关。如果不考虑其他 D/A 转换误差时,D/A 的转换精度就是分辨率的大小,因此要获得高精度的 D/A 转换结果,首先要保证选择有足够分辨率的 D/A 转换器。同时 D/A 转换精度还与外接电路的配置有关,当外部电路器件或电源误差较大时,会造成较大的 D/A 转换误差,当这些误差超过一定程度时,D/A 转换就产生错误。在 D/A 转换过程中,影响转换精度的主
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 短期变压器安装合同格式
- 个人教育居间服务合同
- 初中音乐人教版八年级上册唱歌 采花教案
- 人教部编版七年级上册13 植树的牧羊人教案及反思
- 七年级数学下册 第1章 二元一次方程组1.2 二元一次方程组的解法1.2.2 加减消元法第1课时 加减消元法教学设计 (新版)湘教版
- 自然人股权买卖合同模板
- 2025租房购房合同
- 仓库租赁合同书
- 个人简易借款合同格式
- 2025广告公司委托经营合同
- 第十课+养成遵纪守法好习惯【中职专用】中职思想政治《职业道德与法治》高效课堂(高教版2023·基础模块)
- 【MOOC】航空航天材料概论-南京航空航天大学 中国大学慕课MOOC答案
- 招标代理机构选取技术标投标方案(技术方案)
- 施工班组考核表
- 法理学-(第五版)完整版ppt全套教学教程课件(最新)
- GB∕T 34876-2017 真空技术 真空计 与标准真空计直接比较校准结果的不确定度评定
- 2022年郑州信息科技职业学院职业适应性测试模拟试题及答案解析
- 国际五一劳动节颁奖荣誉晚会动态PPT模板
- 全院CRRT护理技能培训理论考核试题及答案
- 后勤不“后”与“时”俱进——信息技术促幼儿园保育员专业化发展的研究
- 公共厕所除臭工程设计方案和对策
评论
0/150
提交评论