ME32 ADC应用指南

描述

ME32 ADC 应用指南

 1、概述

ME32 系列是内嵌 ARM Cortex M0 核的 32 位微控制器。该系列控制器由敏矽微电子有限公司自主开发,并具有自主知识产权。敏矽微电子的微控制器通用功能有高精度 ADC,UART 串口,SPI 接口,I2C 总线接口,看门狗定时器(WDT),通用计数器/定时器和马达控制功能模块。

ME32 系列 ADC 采用 SAR(电容式渐次逼近)设计,具有采样转换速度快,成本低特点。但 SRA ADC 在使用上与传统的ADC 有一些差别,我们就此做一些讨论(以下整理的资料来源于网上)。

2、SAR ADC 原理

ME32 微控制器中嵌入的 ADC 使用 SAR(逐次逼近寄存器)原理,可以分以下步骤执行转换。每个转换步数等于 ADC 转换器中的位数,而每一步都由 ADC 时钟驱动,每个 ADC 时钟输出产生一位结果。所有 ADC 内部设计基于开关电容技术。下面给出的示例仅显示了 ADC 近似逼近工作原理的第一步,但该过程将一直持续到达到 LSB 为止。

cpu

 

cpu

 

cpu

 

cpu

 

cpu

 

cpu

3、环境对 ADC 转换结果的影响

3.1 ADC 参考电压噪声 由于 ADC 输出是模拟信号电压和参考电压之间的比率,模拟参考上的任何噪声都会导致转换后的数字值发生变化。部分封装采用 VDDA 模拟电源作为参考电压(VREF+),因此 VDDA 电源的质量对 ADC 误差有影响。例如,当模拟基准电压为 3.3 V (VREF+=VDDA)和 1 V 信号输入时,转换结果为: (1/3.3)×4095=0x4D9 然而,当模拟基准电压为 40 mV 峰间纹波时,转换值变为: (1/3.34)×4095=0x4CA(VREF+在其峰值处) Error=0x4D9–0x4CA=15lsb 因此我们可以得出,参考电压噪声对 ADC 转换精度至关重要。而开关电源通常采用内部快速开关功率晶体管,这会在输出中引入高频噪声,开关噪声在 15 千赫至 1 兆赫之间。 3.2 参考电压/供电电源 电源调节对于 ADC 精度非常重要,因为转换结果是模拟输入电压与 VREF+值的比值。如果在连接到 VDDA 或 VREF+时,由于这些输入上的负载及其输出阻抗而导致电源输出降低,则会在转换结果中引入错误。 转换结果=VAIN(2N-1)/VRef+,其中 N 是 ADC 的分辨率(在我们的情况下 N=12)。如果参考电压改变,数字结果也会改变。例如:如果所使用的电源是 3.3 V 的参考电压,而 VAIN=1 V,则数字输出为:如果电源提供的电压等于 3.292 V(在其输出连接到 VREF+之后),则:电压降引入的错误为:0x4DC–0x4D9=3 LSB 3.3 参考电压解耦和阻抗 参考电压源必须具有低输出阻抗,以在各种负载条件下提供标称电压。输出阻抗的电阻和电感部分都很重要。在模数转换器转换过程中,参考电压是连接到开关电容网络的。在连续近似(一个近似周期对应于一个 ADC 时钟周期)期间,该网络的电容器在很短的时间内从/到参考电压充电/放电,因此参考电压必须为电容器提供高电流峰值。在每个近似周期结束时,电容器上的电压必须稳定(参考电压的零电流)。因此,参考电压必须具有非常低的输出阻抗,包括低电感(以便在非常短的时间内提供高电流峰值)。寄生电感可以防止充电过程在接近周期结束时完全完成,或者在 LC 电路中出现振荡(寄生电感与电容网络一起)。在这种情况下,近似循环的结果是不准确的。所以参考电压上正确的去耦电容器必须非常靠近管脚,提供低源阻抗。 3.4 外部参考电压参数 如果使用外部参考电压源(在 VREF+pin 上),则该外部参考电压源有重要参数。必须考虑三种参考电压规格:温度漂移、电压噪声、长期稳定性。 3.5 模拟输入信号噪声 小但频率高的信号变化在采样时会导致较大的转换误差。这种噪音是由电机、发动机点火装置、电源线等电气设备产生的。它通过添加不需要的信号来影响源信号(如传感器)。因此,ADC 转换结果也会不准确。 3.6 ADC 动态范围与最大输入信号幅度不匹配 要获得最大 ADC 转换精度,ADC 动态范围与要转换信号的最大幅度匹配非常重要。假设要转换的信号在 0 V 和 2.5 V 之间变化,且 VREF+等于 3.3 V。ADC 转换的最大信号值为 3102(2.5 V),如图所示。在这种情况下,有 993 个未使用的转换(4095–3102=993)。这意味着转换信号精度的损失。

cpu

3.7 模拟信号源电阻的影响 模拟信号源的阻抗,或源和管脚之间的串联电阻(RAIN),由于流入管脚的电流而引起电压下降。内部采样电容器(CADC)的充电由带电阻的开关控制。随着源电阻的增加(使用 RADC),保持电容器完全充电所需的时间增加。下图显示了模拟信号源电阻效应。

cpu

CADC 的有效充电受 RADC+RAIN 控制,充电时间常数为 tc=(RADC+RAIN)×CADC。如果采样时间小于通过 RADC+RAIN(ts

cpu

3.9 注入电流效应 任何模拟管脚(或紧密定位的数字输入管脚)上的负注入电流可能会将泄漏电流引入 ADC 输入。最坏的情况是相邻的模拟信道。当 VAIN

cpu

3.10 温度影响 温度对 ADC 的精度有很大的影响。主要导致两大误差:偏移误差漂移和增益误差漂移。这些错误可以在微控制器固件中进行补偿 3.11 I/O 管脚串扰 由于 I/O 之间的电容耦合,切换 I/O 可能会在 ADC 的模拟输入中产生一些噪声。串扰可能是由相互靠近或相互交叉的 PCB 磁道引起的。内部交换数字信号和 I/O 引入高频噪声。切换 I/O 输入输出可能会导致电源中的电压骤降,这是由电流浪涌引起的。穿过 PCB 上模拟输入轨迹的数字轨迹可能会影响模拟信号。

cpu

3.12 电磁干扰引起的噪声 来自邻近电路的电磁辐射可能会在模拟信号中引入高频噪声,因为 PCB 轨迹可能像天线一样工作。

cpu

4、硬件设计4.1 系统供电电源及 ADC 参考电源要求 虽然 MCU 可以工作从 2.2V~5.5V 宽电压范围,但电源的噪声对 MCU 的正常工作还是至关重要的,好供电电源设计,系统便成功了一半。系统电源必须至少有一个 10uF 的稳压电容和一个 0.1uF 的去藕电容,而且在 PCB 布板时去藕电容必须最大限度的靠近 MCU 的 VDD 管脚。 由于 ADC 使用 VREF+或 VDDA 作为模拟基准,并且数字值是模拟输入信号与该电压基准的比值,因此电源应具有良好的线路和负载调节。因此,VREF+必须在不同负载下保持稳定,接通电路的一部分增加负载,电流的增加决不能导致电压降低。如果电压在较宽的电流范围内保持稳定,则该电源具有良好的负载调节能力。 例如,对于 LD1086D2M33 电压调节器,当输入电压从 2.8 伏到 16.5 伏(Iload=10 毫安)变化时,线路调节率为 0.035%,当 Iload 从 0 到 1.5 安变化时,负载调节率为 0.2%(详情请参阅 LD1086 系列数据表)。线路调节值越低,调节效果越好。同样,负载调节值越低,电压输出的调节性和稳定性越好。也可以使用 VREF+的参考电压,例如 LM236,它是 2.5v 的电压参考二极管(有关更多详细信息,请参阅 LM236 数据表)。 参考电压源设计必须提供低输出阻抗(静态和动态)。寄生串联电阻和电感必须最小化。参考电压上的正确去耦电容器位于非常靠近管脚的位置,提供低参考电压源阻抗。

cpu

4.2 ADC 信号源

4.2.1添加外部滤波器

添加外部 RC 滤波器可消除高频。处理频率成分高于感兴趣频率范围的信号不需要昂贵的滤波器。在这种情况下,一个相对简单的低通滤波器,其截止频率 fC 刚好高于感兴趣的频率范围,就足以限制噪声和混叠。与最高关注频率一致的采样率就足够了,通常是 fC 的 2 到 5 倍

4.2.2添加白噪声或三角扫描以提高分辨率

该方法将硬件技术和软件技术相结合,提高了测量精度。从软件的角度来看,该方法使用平均(过采样),从硬件的角度来看,它使用信号修改/扩频/抖动。在输入信号有噪声(为了能够计算平均值,需要对信号进行一些改变)并且要求获得信号的平均值的情况下,可以使用平均值。当输入信号是一个非常稳定的无噪声电压时就会出现问题。在这种情况下,当测量输入信号时,每个数据样本是相同的。这是因为输入信号电平介于两个 ADC 字电平之间(例如,在 0x14A 和 0x14B 之间)。因此,无法更精确地确定输入电压电平(例如,如果电平接近 0x14A 或接近 0x14B 电平)。解决方案是向输入信号添加噪声或一些信号变化(具有均匀的信号分布,例如三角形扫描),输入信号将其电平推过 1 位 ADC 电平(以便信号电平在 0x14A 以下和 0x14B以上变化)。这会导致 ADC 结果发生变化。将软件平均应用于不同的 ADC 结果,产生原始输入信号的平均值。作为一个例子,该方法可以通过使用与输入信号耦合的三角形发生器来实现(白噪声的产生更为复杂)。必须注意不要修改原始输入信号的平均值(因此,必须使用电容耦合)。下图是微控制器直接生成的准三角形源的一个非常简单的实现

cpu

4.2.3小信号/弱信号考虑 对于小信号/弱信号(电阻分压的电池电压信号,NTC 信号),由于信号内阻大,最好的办法是在 MCU 外部采用运放(OP),对信号进行增益和加强,从而一劳永逸解决信号的噪声和易受干扰等问题。但出于成本的压力和本身对测量精度要求不高,信号也变化缓慢,这时候可以加入一个 0.1u~1u 的电容,来消除 ADC 转换时由于信号弱对测量精度的影响。 4.2.4电阻分压信号源与参考电压的一致性问题 对电阻分压信号源(如 NTC)来讲,ADC 输入端口的电容和分压电阻可能会导致与电源电压的变化形成相位差,如果电源电压正好是 ADC 的参考电压,那么电源的波动就可能使参考电压和信号不匹配,测量的结果也是不准确的。所以减小分压电阻和 AD 端口的电容来缩小相位差是非常必要的。采用 NTC 时,建议分压电阻不要超过 10K,AD 端口电容在 0.1u。 4.3 PCB 注意事项

VDDA 管脚的滤波电容要大于 0.1u,噪声大时加大到 1u。

信号源远离强电和大电流信号,避免与其他高频信号并行行成串扰。

ADC 信号尽可能采用地和电源进行屏蔽。

5、软件采样

有如下几个方法可以用来提高 ADC 转换和采样的精度:

平均样本 – 平均会降低速度,但可以提高精度

数字滤波(直流值 50/60Hz 抑制)

– 设置了适当的采样频率(定时器触发在这种情况下很有用)。

– 对采样数据进行软件后处理(例如 50 Hz 的梳状滤波器噪声及其谐波抑制)。

交流测量的快速傅里叶变换(FFT)

–这种方法允许在测量信号中显示谐波部分。

–由于使用了更多的计算能力,因此速度较慢。

ADC 校准:偏移、增益、位重校准 ADC 校准减少内部 ADC 错误。然而,内部 ADC 结构必须知道。

最小化 CPU 内部和系统受控部分噪声 必须设计应用程序 – 在 ADC 转换过程中使用来自微控制器的最小干扰。

– 尽量减少采样和转换过程中的数字信号变化(数字沉默)。

5.1 平均法 平均是一种简单的技术,在这里你可以对一个模拟输入进行多次采样,然后用软件计算结果的平均值。这种技术有助于在模拟电压不经常变化的情况下消除噪声对模拟输入的影响。必须对几个读数进行平均,这些读数都对应于相同的模拟输入电压。确保在转换完成的时间段内,模拟输入保持在相同的电压,否则您将累积对应于不同模拟输入的数字值,并且您将引入错误。

另外抛弃一些明显的因干扰而突变的结果(最低最高法则),对使用平均法也是非常有利的。

5.2 用于交流测量的 FFT 在某些特定情况下,应用程序需要知道带有给定频率。在这种情况下,交流信号的有效值也可以通过使用相对较慢的采样速度(与测量的信号频率相比)。 例如,当测量交流电源信号时(接近正弦且具有相对较低的谐波含量),足以选择 32 次采样频率大于电源频率(50 赫兹)。 在这种情况下,高达 15 阶的谐波可以获得。主信号中 15 次谐波的振幅很小(下一次阶次谐波可以忽略不计)。电源信号的计算有效值为由于谐波的有效值被加到总交流谐波值为:

cpu

因此,如果第 15 次谐波振幅仅为第 1 次谐波(50 赫兹)的 1%(0.01),则其对总有效值的贡献仅为 0.01%(因为上述公式得出:0.01 2=0.0001)。因此,该方法的原理是用已知频率对交流信号进行采样然后对每个测量周期的 FFT 进行后处理。因为每个测量信号周期的采样点数量很小(例如 32 个点),则 FFT 处理所需的性能并不高(例如,仅 32 点 FFT)。该方法适用于低失真信号的交流测量。这个缺点是它需要精确的信号采样:

测量信号的频率必须已知,且 ADC 采样频率必须精确设置为测量频率的 2N 倍增。

输入信号频率通过另一种方法测量。

通过对预分频器和 MCU 主控器进行编程,调整 ADC 采样频率时钟选择(如果使用不准确的时钟执行采样,则插值可以用于在要求的点处获取样品)。

5.3 最小化内部 CPU 噪声 当 CPU 工作时,它产生大量的内部和外部信号变化通过电容耦合传输到 ADC 外围设备。这种干扰影响 ADC 精度(由于不同的微控制器操作而产生的不可预测的噪声)。为了最小化 CPU(和其他外围设备)对 ADC 的影响,有必要尽量减少采样和转换期间的数字信号变化(数字静音)。这是使用以下方法之一完成(在采样和转换期间应用):

最小化 I/O 管脚更改

最小化内部 CPU 更改(CPU 停止、等待模式)

为不必要的外围设备(计时器、通信……)停止时钟

选择系统相对安静的时候进行采样

审核编辑 :李倩

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分