- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AVR121: 使用过采样增加ADC精度
翻译:邵子扬 2006年4月13日
修订:邵子扬 2006年4月14日
shaoziyang@
特点
? 使用过采样增加精度
? 平均和抽取
? 平均采样减少噪声
1 介绍
Atmel的AVR单片机提供了10位精度的模拟到数字转换器。在大多数情况10位精度已经足够了,但是某些情况下需要更高的精度。特殊的信号处理技术可以用来提高测量的精度。使用一种称为“过采样和抽取”的方法可以得到较高的精度,不需要使用外部的ADC。
图 1-1. 增加分辨率
2 操作理论
在阅读这篇应用笔记其他部分之前,读者应当先阅读应用笔记AVR120 - ‘ADC校准’和AVR数据手册中ADC的部分。下面的例子和数字是计算单端输入的连续模式,ADC噪声减少模式没有使用。这个方法对其他模式也有效,尽管数字也许会不同。
ADC的参考电压和ADC的精度决定了ADC的步距。ADC的参考电压VREF可以选择使用AVCC,内部的2.56V / 1.1V参考电压,或者AREF引脚上的电压。较低的VREF提供了较高的电压精度但是同时减少了输入信号的动态范围。如果2.56V的VREF被选择,它将给用户大约2.5mV的转换精度,并且最高的输入电压是2.56V。选择使用ADC输入通道的增益,这使用户有更好的精度来测量模拟信号,代价是损失ADC的动态范围。如果不能接受以动态范围交换精度,可以采用过采样来增加精度。这个方法受到ADC的特性限制:使用过采样和抽取将降低ADC的量化误差,但是不能减少ADC的非线性化误差。
2.1 采样频率
Nyquist 定理规定信号的采样频率必需至少是信号频率的两倍,否则高频部分将有损失(Nyquist 频率。
公式 2-1. Nyquist 频率
f nyquist 2 f signal
这里 fsignal 是输入信号的最高频率,上面的采样频率 fnyquist 称为过采样。这个采样频率只是理论上的绝对最小频率,在实际中,用户通常希望尽可能高的采样频率,在时域中获得最好的效果。这样有人可能会说在大多数情况下输入信号已经是过采样了。
采样频率是CPU时钟的分频的结果,一个较低的分频系数给出较高的ADC时钟频率。在一个特定点,较高的ADC时钟将降低转换的精度,即有效数据位ENOB(Effective Number Of Bits)。所有的ADC都有带宽限制, AVR的ADC也不例外,按照数据手册的说法,要获得10位转换精度,ADC时钟频率大概在50kHz – 200kHz。当ADC时钟是200kHz时,采样频率大约是15kSPS(次每秒),可以采样信号的上限大约是~7.5kHz。按照数据手册,ADC时钟最高可以到1Mhz,尽管这将降低ENOB。
3 理论
3.1 过采样和抽取
‘过采样和抽取’理论的背后是非常复杂的,但是的方法却是比较容易的。这个技术要求大量的采样,这些额外的采样完成信号过采样。每增加额外的一位精度,信号必需过采样4倍。频率和输入信号的关系在公式3-1中。为了尽可能最好的重现信号,这么多次的采样是必需的,因为大量的采样平均后可以更好的重现输入信号。这可以认为是这篇应用笔记的主要内容,下面的理论和例子用来进一步解释。
公式 3-1. 过采样频率
f oversampling = 4n fnyquis
3.2 噪声
为了使这个方法正常工作,信号成分在转换过程中不能发生变化。但是成功增加精度的另一个标准是输入信号在采样时有所变化。这看起来是矛盾的,因为信号的变化意味着较少有效的LSB,变化的信号可以看成是信号的噪声成分。在信号过采样时,噪声使信号产生微小的变化。ADC的量化误差一般至少是0.5LSB,因此噪声幅度超过0.5 LSB就改变了LSB。噪声幅度有1-2 LSB时更好,因为可以保证几次采样不会总是相同的值。
使用抽取技术时,噪声的标准:
信号成分在转换时不能变化。
信号上有一定的噪声。
噪声的幅度至少有1 LSB。
通常AD转换时有一定的噪声,噪声可能是热噪声、CPU的核心产生的噪声、I/O端口切换带来的噪声、电源变化引起的噪声(特别是开关电源)等等。这些噪声在大多数情况下可以使这个方法正常工作了,但是在特殊情况下,需要引入噪声到输入信号,这个方法叫抖动。图 3-1 (a)展示了测量电压信号的在两档之间时,简单将4次采样结果平均没有太大作用,结果可能是同样的数字,它只能消除信号的波动。图3-1 (b) 显示添加人工噪声到输入信号后,改变了转换结果的LSB。添加4次采样同样的采样步骤,产生的结果给出更好的精度,如图3-1 (c) 所示,ADC的“虚拟精度”从10位增加到11位。这个方法就是抽取,在3-3小节会进一步讲解。
图 3-1. 精度从10位增加11位
另外使用这个方法的理由是可以
文档评论(0)