AD7674和C8051 F060构成的数据采集系统
摘 要 随着数字信号处理技术的发展,人们对数据采集系统的采样精度和传输速度要求越来越高。本文介绍的数据采集系统设计方案采用了ADI公司的高精度18位SAR型数模转换芯片AD7674与Silicon Labora-tories公司C8051F060单片机构成一个数据采集系统,并利用并口模式实现C8051F060单片机与AD7674之间的高速数据传输,给出了部分源程序。
关键词 数据采集 模数转换器 并口 C8051F060
1 AD7674和C8051060简介
1.1 AD7674简介
AD7674是一款高精度 18位逐次逼近(SAR)型ADC,具有采样速率高、精度高、功耗低、无管道延迟的特点,其采样速率最高可以达到800 kHz,积分非线性误差(INL)最大为±2.5 LSB,在整个工作温度范围内可保证无丢码。该器件是全差分输入,5 V单电源供电,可接5 V或3.3 V数字电源。AD7674还具有许多其他特点,包括1个内部变换时钟、1个内部基准缓冲器、误差修正电路以及串行(SPI)与并行(18、16或8位总线)接口。
AD7674采用逐次逼近结构。由于逐次逼近结构的多路技术和低功耗,使此器件比一般∑-△ A/D转换器的性能更优越;而且芯片内部还集成了跟踪保持电路,逐次逼进的结构使其没有任何通道延时,这些特征使该器件广泛地应用于多通道系统中。
器件的原理框图如图1所示。
AD7674能提供3种不同转换速率工作方式,以便对不同的具体应用优化性能。这3种工作模式如下:
WARP,允许采样率高达800 kHz。然而在这种模式下只有当转换之间的时间不超过1 ms时,才能保证其转换的精度。如果连续两次转换之间的时间大于1 ms,第一次转换的结果就会被忽略,这种模式适合于要求快速采样率的应用。
NORMAL,这种模式的采样率为666 kHz,在这种模式下对采样转换之间的时间没有限制,既可保证高的转换精度又可确保快速的采样速率。
IMPULSE,一种低功耗模式,其采样率为570 kHz。例如当器件工作在1 kHz时,仅消耗功率136μW。该器件适合于电池供电的应用。
1.2 C8051 F060简介
C8051F060单片机是表贴TQFP100封装,包括1个8051内核,2个16位AD转换器,8个8位A/D转换器,2个12位D/A转换器,1个SPI接口,1个I2C接口,2个UART接口,64 KB Flash及22个中断源。只用1块C8051F060芯片即可完成单片机8051的各种控制,多路A/D转换和D/A转换,I2C、SPI数据总线传输,RS232、RS485串口通信等功能,从而大大减少了元器件的种类,缩小了印制板的面积,节约了成本,提高了系统可靠性。而其交叉开关方式的配置,使I/O口应用更加灵活方便。2 AD7674与C8051F060的接口电路图2为AD7674在高速采集系统中的外围电路和接口电路。外围电路包括电压基准输入的设计、模拟电压输入部分的设计、模拟和数字电源供电的设计及接口电路的设计。接口电路包括AD7674与C8051F060和CPLD的接口。
3 A/D转换
本文中的AD7674采用NORMAL模式进行数据采样转换。在这种模式下对采样转换之间的时间没有限制,这样可同时保证高的转换精度和采样速率。
CNVST信号控制AD7674转换的开始,一旦转换开始就不能放弃或重新开始,直到转换完成。CNVST信号与CS和RD互不干扰。
AD7674的并口总线宽度可配置为18位、16位或8位。数据既可以在每次转换完成后读出,也可在下一次转换过程中读出,读数据时序如图3所示。然而在转换过程读数据模式中,推荐在前半转换周期读数据,这样可以避免数字接口和模拟转换电路之间潜在的数据冲突。本文采用的是8位并口总线宽度,配置为 MODE0=0,MODE1=1,以便于和单片机进行数据传输。
值得注意的是在读取A/D转换数据时,采用转换完毕后读取数据。要保证时序关系正确,一定要在数据转换结束,而下一次转换开始之前把数据读走;假如读取数据时数据转换没有结束或刚启动下一次数据转换,则会造成读取数据错误。本文采用CPLD经由外部有源晶振进行分频,产生转换信号CNVST与读信号RD相关,使得RD信号和CNVST信号同步,从而保证读取的采集数据正确无误。
4 软件编程
在软件编制时,首先要对单片机C8051F060进行初始化和对AD7674进行配置,再启动转换信号进行数据转换和读取数据。单片机C8051F060的初始化包括对单片机的I/O端口、交叉开关和系统时钟的初始化。AD7674配置包括转换模式、总线接口数据方式和采样数据存储格式的配置。部分源代码程序如下:
结 语
本文详细介绍了高速率、高精度的18位AD7674与C8051F060之间并口通信的接口电路及其软件设计。该嵌入式数据采集系统设计简洁,在Keil 集成开发环境下采用单片机C语言编写、调试完成。由于数据采集系统可应用于各种信号处理系统中,具有很高的推广价值。本文采用的单片机配置灵活,传输速度快,接口采用并口通信,可实现嵌入式数据采集系统高速数据传输;同时AD7674与AD7678、AD7679等18位SAR ADC以及AD7621、AD7623等16位高速SAR ADC引脚相兼容,从而大大增强了系统开发的灵活性和拓展性。
- C8051F320在USB设计中的应用(01-18)
- Silicon Labs扩充多脚数、触摸感应装置单片机产品线(02-05)
- 一种基于单片机的心肺复苏系统(04-17)
- 基于C8051F040的炮塔方位角测试系统设计(07-02)
- 便携式串联电池组电压检测系统(09-29)
- 基于声纳传感器和C8051F040的测距系统设计(10-22)