DIY编程器网

标题: 基于MAX197的高精度数据采集系统 [打印本页]

作者: admin    时间: 2015-4-28 21:26
标题: 基于MAX197的高精度数据采集系统
0 引言

常见的八位模数转换芯片(如ADC0809【3】等)设计的系统比较简单而且成本较低,但有时八位的精度是不够的,这时我们就不得不选用更高精度的模数转换芯片,其中MAX197就是一款性价比很好的12位精度模数转换芯片。MAX197芯片是美国Maxim公司的快速模数转换芯片,转换时间最小仅为6 μ s,相对于ADC0809的100 μ s要短得多。它的输入信号带宽可达5 MHz,有12位并行的三态数据接口。另外MAX197片内包含高精度的参考电压源和时钟电路,因此它只需要很简单的外部电路即可完成模数转换功能,应用非常方便。
1 MAX1 97芯片的特点及性能:

1.1 MAX197的主要优点:

1)仅使用单5 V电源供电;2)12位分辨率,1/2LSB线性度;3)四种量程可选:0~+5V、0~+1OV、-5~+5V、-10~+10V:4)8路模拟输入通道,具有输入电压保护(-1 6.5v~+16.5V);5)最小6 μ s转换时间,最大100 kh/s采样率;5)内部4.096V参考电压;6)两种掉电工作模式,两种工作时钟可选,两种采集模式可选。

1.2 MAX1 97的采集模式

1.2.1 内部采集模式

通过写入清零ACQMOD位(ACQMOD=0)的控制字选择内部采集模式。在这种模式下,一个写脉冲将触发一个内部捕获周期,并且此捕获周期是内部定时的,为6个时钟周期。当这6个时钟周期的捕获间隔结束时,转换开始。转换时间是12个时钟周期,不论内部或外部采集模式。

1.2.2 外部采集模式

用两个独立的写脉冲控制捕获和转换的开始。 第一脉冲,与ACQMOD=1一起,开始一个不确定长度的捕获间隔; 第二个写脉冲与ACQMOD=0一起终止捕获并在写脉冲的上升沿开启一次转换。然而,如果第二个控制字包含ACQMOD=1,一个不确定的捕获间隔时问将被重新触发。外部采集模式可以更加精确地控制采样间隔,并可独立控制捕获和转换时间。

1.3 MAX197的控制字

MAX197有8位控制字,分别控制着此芯片的工作模式、捕获方式、量程选择、模拟输入通道选择,其具体定义如表1所示:



2 高精度数据采集系统的硬件及软件实现

2.1 高精度数据采集系统的硬件电路

本系统使用51系列单片机中性能较为优越的AT89S52作为主处理芯片。AT89S52是ATMEL公司2001年推出的新型八位单片机。它具有8 K的FLASH作为通用的程序存储空间,以及具有可在系统编程等优秀特点。

使用AT89S52和MAX197设计的数据采集系统电路原理图如图1所示。



如图1所示,将MAX197的八位数据线与单片机的P0口相连,用于写控制字和读数据;HBEN与P21相连,控制读数据的高四位或低八位;MAX197的RD和WR引脚分别接AT89S52的RD和WR引脚;片选CS引脚接AT89S52的P22脚。

2.2 高精度数据采集系统的汇编程序

下面是上述系统电路采用中断方式采集数据的主要程序:



2.3 单片机数字滤波的实现

对于随机噪声干扰很严重的情况,也可以对采集转换后的数据进行数字滤波。对于随机信号的干扰,我们可以采用采样若干次再求其平均值作为最终结果的方法来进行数字滤波。单片机中求均值的主要思想是:对采样的数据先做带进位的加法,然后通过移位的方法来完成除法运算(右移一位相当于除以2)。假设采集8组数据,其低八位分别存储在30H~37H单元,高八位分别存储在38H~3FH单元。滤波后的数据低位存储在30H单元,高位在38H单元。汇编程序可如下编写:



3 结束语

本文主要论述如何采用高精度模数转换芯片MAX197和51系列单片机AT89S52设计高精度数据采集系统。给出了系统设计思想、硬件及软件的详细设计,介绍了单片机数字滤波技术的基本原理和实现方法。此系统具有精度高、转换速度快、程序简单、CPU占用率低等特点。
作者: 李小路    时间: 2020-10-2 19:30
谢谢分享!




欢迎光临 DIY编程器网 (http://diybcq.com/) Powered by Discuz! X3.2