嵌入式模数转换器精度与分辨率
ADC的精度和分辨率是两个不同的概念。精度是指转换器实际值与理论值之间的偏差;分辨率是指转换器所能分辨的模拟信号的最小变化值。ADC 分辨率的高低取决于位数的多少。一般来讲,分辨率越高,精度也越高,但是影响转换器精度的因素很多,分辨率高的ADC,并不一定具有较高的精度。精度是偏移误差、增益误差、积分线性误差、微分线性误差、温度漂移等综合因素引起的总误差。因量化误差是模拟输入量在量化取整过程中引起的,因此,分辨率直接影响量化误差的大小,量化误差是一种原理性误差,只与分辨率有关,与信号的幅度,采样速率无关,它只能减小而无法完全消除,只能使其控制在一定的范围之内,一般在±1/2LSB范围内。偏移误差
偏移误差是指实际模数转换曲线中数字0的代码中点与理想转换曲线中数字0的代码中点的最大差值电压。这一差值电压称作偏移电压,一般以满量程电压值的百分数表示。在一定温度下,多数转换器可以通过对外部电路的调整,使偏移误差减小到接近于零,但当温度变化时,偏移电压又将出现,这主要是由于输入失调电压及温漂造成的。一般来说,温度变化较大时,要补偿这一误差是很困难的。ADC噪声消除技术
ADC噪声消除技术
AT90S8535的内外部数字电路会产生电磁干扰,从而影响模拟测量精度。如果要求测量精度较高,则应采取如下技术以减少噪声:
1) AT90S8535的模拟部分及其他的模拟器件在PCB板上要有独立的地线层。模拟地与数字地单点相连;
2) 使模拟信号通路尽量短。使模拟走线在模拟地上通过,并尽量保持远离高速数字通路的走线;
3) AVCC要通过一个RC网络连接到VCC;
4) 利用ADC的噪声消除功能减小来自CPU的噪声;
5) 如果A口的一些引脚作数字输出口,则在ADC转换过程中,这些口不要改变其状态。
3.2 ADC噪声消除功能的实现
ADC可以在CPU空闲模式下进行转换,这一特征使得可以抑制来自CPU的噪声。为了实现这一特性,需采取一下措施:
A) 必须选择单次转换模式,ADC的转换结束中断必须使能;
ADEN=1;ADSC=0;ADFR=0;ADIE=1;
B) 进入空闲模式。一旦CPU停止,则ADC将开始转换;
C) 如果在ADC转换结束之前没有发生其它中断,则ADC中断将唤醒MCU并执行ADC转换结束中断。
微控制器片内A/D转换器由于自身的结构、性能特点,在许多应用中会遇到与独立A/D转换器不同的问题,但大多数嵌入微控制器的A/D器都具有像AT90S8535相似的结构和特点,采取的消噪技术和方法也大致相同,我们需根据具体情况具体分析需采取嵌入A/D还是独立A/D,并根据具体需求采取必要的措施来提高A/D转换器的精度。