16位高速A/D转换器在高速DSP处理器中的应用

发布者:数字火花最新更新时间:2007-03-09 手机看文章 扫描二维码
随时随地手机看文章
由于DSP有先进的并行结构使其特别适合于信号处理,故已经越来越多的应用于工业控制领域和各类仪器仪表的开发设计。而在用数字信号微处理器构成的智能仪器仪表中,外部的各种模拟信号必须通过A/D转换器变换为数字信号后才能送入微处理器芯片。而BB公司的高精度转换器ADS7805具有较高的性能价格比,最高的转换频率可达100KHz,在仪器仪表中得到广泛的应用。ADS7805芯片有28脚双排直插式或贴片式封装,只需单端5V电源供电即可正常工作;芯片内部含有采样保持、电压基准和时钟等电路,极大简化用户的电路设计,同时提高了系统的稳定性。ADS7805采用CMOS工艺制造,功耗低(最大功耗为100mW),单通道输入,模拟输入电压的范围为%26;#177;10V,采用逐次逼近式工作原理,转换结果由16位数据线并行输出,启动转换和读取上次转换的结果可以同时进行。 1、引脚及功能 ADS7805共有28个引脚,图1为其引脚图。这些引脚大体可以划分为3类。 i. 电源类 数字电源Vdig(28脚)和模拟电源Vana(27脚)通常一起接到5V电源上;数字地DGND(14脚)和模拟地AGND1(2脚)、AGND2(5脚)通常共地;参考电压端REF(3脚)对地接2.2μF钽电容,则芯片内部就会产生2.5V基准电压;参考电容端CAP(4脚)对地接2.2μF钽电容。 ii.信号类 模拟信号输入端Vin(1脚);D15~D8(6脚到13脚)与D7~D0(15脚到22脚)为数字信号并行输出口。 iii.控制信号类 片选信号输入端/CS(25脚);读取结果/模数转换控制信号输入端R/C(24脚);转换结果指示输出端/BUSY(26脚);控制从总线读出的数据是转换结果的高字节还是低字节信号输入端BYTE(23脚)。 2、 启动A/D转换和读取转换结果 美国BB公司生产的ADS78XX系列A/D转换器的启动转换和读取转换结果的时序都比较特别,且大致相同,ADS7805的转换时序图如图2所示。 图2 ADS7805的转换时序图 首先要在R/C引脚输入一个低电平信号,此低电平信号的持续时间要求在40~7000ns之间;这时BUSY引脚电平被拉低表示正在进行转换,在经过了大约8μs(即为/BUSY信号保持低电平的时间)以后,转换完成,BUSY引脚电平相应变高;再把R/C脚电平拉高,此时ADS7805就会将转换结果输出到数据总线上。虽然转换结果为16位,但对于具有16位数据总线的DSP微处理器而言,不必分两次读入,故可将BYTE脚从始至终同一信号电平,当BYTE脚为高电平时,Pin6~13输出低字节,Pin15~22输出高字节;反之当BYTE脚为低电平时,Pin6~13输出高字节,Pin6~13输出低字节。如果用/CS引脚来控制ADS7805的转换,其时序同R/C引脚相似,故这里就不详细说明。ADS7805转换得到的数字结果是以补码形式给出的,现给出其理想的数据转换表,表1所列即为ADS7805的模拟电压与其补码形式的数字输出关系, -10V~9.99512V为量程 表1 模拟电压输入和数字信号输出关系 3、 与DSP的接口 TI公司的16-bit定点DSP TMS320F206,是一种低功耗器件,采用了改进的哈佛结构,有1条程序总线和3条数据总线,流水线操作,有高度并行32-bit算术逻辑单元、16*16-bit并行硬件乘法器、片内存储器、片内外设和高度专业化的指令集。当TMS320F206外接16MHZ的晶振,工作时钟控制模式选为%26;#215;1时,可以将ADS7805的/CS脚接到DSP的/RD信号引脚,但为了减少控制线,可以将/CS引脚直接接成低电平,R/C引脚接到DSP的扩展输出口,而/BUSY信号只需连接到普通的端入端口即可,如DSP的IO口、扩展芯片74LS244的输入口等。图3是一个ADS7805与TMS320F206的典型接口电路。 4、 C语言程序设计 TMS320F206的用户可以用汇编语言或C语言进行源程序的编写,而C语言开发出的系统易于维护,可靠性高,可移植性好,故下面介绍用C语言编写的ADS7805的开发程序。 源程序如下: #include #include ioport unsigned int port90ac; ioport unsigned int porte0f7; #define ic273n port90ac #define ads7805 porte0f7 #define Wait asm(" nop "); int i, ia[8]; double bv_coil,IA; reg_aspcr=0x0e00; reg_iosr=0x0000; asm( " clrc intm "); ic273n=0x0008; Wait; for(i=0;i<=7;i++) { ic273n=0x0000; while ((reg_iosr%26;amp;0x0004)==0x0004) { if (adt> 2; return();) ic273n=0x0008; Wait; ia[i]=(int)(ads7805%26;amp;0xffff); } IA=0; for (i=0;i<=7;i++) { if ia[i]<32767 pr[i]=((double)(ia[i]))*0.000305185;/*10/32767=0.000305185*/ else pr[i]=((double)(ia[i]-65535))*0.000305185; IA=IA+pr[i]*pr[i]; } bv_coil = sqrt(IA/8); 5、 结束语 ADS7805为16位的A/D转换器,它不仅分辨率高、转换速度快,而且接口简单方便、应用灵活,因而具有广泛的应用前景。笔者在GKNDC-H型高压开关特性精密测量仪中就使用了ADS7805,并取得了很好的测量效果。
引用地址:16位高速A/D转换器在高速DSP处理器中的应用

上一篇:TLC320AC01与DSP的接口设计
下一篇:DSP与CAN总线的测速和远程传送一体化

小广播
最新应用文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved