16位串行模数转换器ADS8509及其应用

2011-03-26 07:32王丹琦黄根春孙小刚
电子设计工程 2011年14期
关键词:管脚低电平C语言

王丹琦,黄根春,孙小刚

(1.新疆师范大学物理与电子工程学院,新疆乌鲁木齐830054;2.武汉大学电信学院,湖北武汉430079)

数据采集就是通过模数转换器将输入的模拟信号转换成数字信号再进行处理,模数转换器就是数据采集系统的核心器件,模数转换器的性能指标影响到数据采集系统的精度。ADS8509是一款新型的16位精度,CMOS结构的逐次逼近寄存器型A/D转换器[1-2],采样率高达250 kHz,最大非线性误差小于±2LSB。本设计采用ADS8509和单片机组成数据采集系统,具有采集速度快,精度高,控制简单等特点。

1 ADS8509的性能特点和管脚说明[3]

ADS8509采用3个模拟量输入,串口输出,与SPI串行通信协议兼容。ADS8509片内自带基准源,有6种可选的电压输入范围,且输入电压范围可以是单极性,也可以是双极性。数据输出可采用内部参考时钟,也可与外部时钟同步,同时输出同步脉冲信号,方便与标准DSP处理器接口。

ADS8509采用20引脚SOIC和28引脚SSOP两种封装形式,并且采用单极性+5 V供电电源,指定工作温度范围在-40~85℃之间。引脚图如图1所示。

图1 引脚图Fig.1 Pin configurations

R1IN~R3IN:模拟信号输入端。

AGND1~AGND2:模拟地。

CAP:标准缓冲电容器,通过2.2 μF的电解电容接地。

REF:标准输入输出,内部标准电压为2.5 V。一般通过一个2.2 μF的电解电容接地。

DGND:数字地。

VDIG:数字电源输入,标定为+5 V。

VANA:模拟电源输入,标定为+5 V。

PWRD:电源掉电输入,接低电平。

BUSY:忙输出。当转换开始后,开始变低,直到转换完成,数据被存到移位寄存器中后,才开始变高。

CS:片选信号,低电平有效。

TAG:外部时钟模式下的标记输入。

DATA:串行数据输出。

DATACLK:内部或外部时钟信号,数据输出DATA与DATACLK同步。当为高电平时,DATACLK为外部时钟信号输入端;当为低电平时,DATACLK为内部时钟。

SYNC:同步输出。

2 ADS8509的工作原理[4]

在采用外部时钟模式时,还有几种不同的模式。一般情况下,只有在读数据的时候才采用外部时钟。这种叫做间断模式。因为外部时钟和控制数据转换的内部时钟并不同步,所以在外部时钟模式下,数据转换时钟有一点轻微的变动,都会影响采样的过程。

在间断模式下,数据在采样或者转换时都能被读,而且都有个同步输出脉冲信号SYNC。无论是在采样期间还是转换期间,SYNC脉冲都会在外部时钟的上升沿产生,当然,这不是在读状态时产生的,SYNC是在读指令之后的第一个上升沿产生的。每来一个上升沿,就产生一个SYNC信号,数据在SYNC脉冲产生后才被取出。

3 ADS8509与单片机接口的应用电路

本文介绍一种ADS8509与单片机8051接口的数据采集电路,图2给出了ADS8509的外围电路[5]及与单片机的接口电路[6-7]。

图2 ADS8509与单片机8051接口电路图Fig.2 Interface circuit diagram between ADS8509 and 8051MCU

具体的数据采集过程[8-9]如下所述:ADS8509的管脚接低电平,采用内部时钟模式接高电平,输出数据为标准二进制码。片选信号接地。启动信号为一脉冲,由外部电路过零比较器LM311产生,接入ADS8509的R/管脚。当A/D转换启动管脚输出一个低电平,一直保持到转换结束,所以将接入单片机8051的P1.0脚,当状态为1时,开始读取采样数据。因为数据转换和内部时钟DATACLK同步,所以将DATA接至单片机的P1.1脚,DATACLK接至单片机的P1.2脚,每检测到一次DATACLK信号的低电平,就读取一位数据放在移位寄存器中,当读满16位时,完成一个数据的读取。

数据采集的程序采用C语言[10]编写,在Keil uVision环境下编译,下面附上数据采集的部分程序。

4 结论

笔者详细论述了高速串行模数转换器ADS8509的性能及工作模式,并给出了与单片机之间数据通讯的实例,试验表明串行模式的A/D转换器也可以实现数据的高速采集。数据采集的程序采用C语言编写,提高了软件开发效率,保证了系统的稳定性要求。

设计的不足之处在于,如果系统的输入信号频率较高,那么高速的A/D转换器会和单片机的处理速度不匹配,单片机无法及时完成数据的读取工作,这就需要在A/D转换器和单片机之间加入控制接口电路来实现数据的缓冲和暂存。

[1]刘伟,王汝琳,张守祥,等.基于DSP和ADS8509的煤矸石振动信号的实时采集[J].煤矿机械,2009,30(7):197-199.

LIU Wei,WAGN Ru-lin,ZHANG Shou-xiang,et al.Realtime vibration signal acquisition of coal and rock based on DSP and ADS8509[J].Coal Mine Machinery,2009,30(7):197-199.

[2]黄根春,陈小桥,张望先.电子设计教程[M].北京:电子工业出版社,2007:51-53.

[3]Floyd T L,Buchla D M.The science of electronics Analog devices[M].Upper Saddle River:Prentice Hall,Inc,2005:59-76.

[4]石晓瑛,许智榜.基于AT90S8515和USB接口数据采集系统[J].微计算机信息,2005,21(18):90-92.

SHI Xiao-ying,XU Zhi-bang.A design of data acquisition system based on USB[J].Microcomputer Information,2005,21(18):90-92.

[5]董尚武.电子线路[M].北京:清华大学出版社,2006:338-340.

[6]瞿安连.电子电路—分析与设计[M].武汉:华中科技大学出版社,2010:299-301.

[7]窦振中.单片机外围器件实用手册[M].北京:北京航空航天大学出版社,1998:23-30.

[8]张临,张建中,刘称,等.基于AD7705及FPGA的数据采集系统的设计[J]天津工程师范学院学报,2010,9(20):26.

ZHANG Lin,ZHANG Jian-zhong,LIU Chen,et al.Research of data acquisition system based on the AD7705 and FPGA[J].Journal of Tianjin University of Technology,2010,9(20):26.

[9]常莉来,凌宏江.基于C8051F单片机的多通道数据采集仪[J].机械制造,2010,11(48):41-42.

CHANG Li-lai,LING Hong-jiang.Based on C8051F MCU multi-channel data acquisition instrument[J].Machinery Manufacturing,2010,11(48):41-42.

[10]赖麒文.80C51单片机C语言彻底应用[M].北京:科学出版社,2002:15-45.

猜你喜欢
管脚低电平C语言
基于Visual Studio Code的C语言程序设计实践教学探索
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
基于C语言的计算机软件编程
浅谈物理电路与数字电路
高职高专院校C语言程序设计教学改革探索
基于图像处理的异型电子元器件管脚偏移误差检测方法研究
CMOS数字IC管脚电容的估算与测量
15-MeV电子直线加速器的低电平系统
论子函数在C语言数据格式输出中的应用
HC08芯片JVT测试方法的探究