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 为止。
![1668392561519753.png 1.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392561519753.png)
![1668392648352369.png 2.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392648352369.png)
![1668392659656175.png 3.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392659656175.png)
![1668392665443720.png 4.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392665443720.png)
![1668392682448443.png 5.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392682448443.png)
![1668392688376784.png 6.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392688376784.png)
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)。这意味着转换信号精度的损失。
![1668392629327528.png 7.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392629327528.png)
3.7 模拟信号源电阻的影响
模拟信号源的阻抗,或源和管脚之间的串联电阻(RAIN),由于流入管脚的电流而引起电压下降。内部采样电容器(CADC)的充电由带电阻的开关控制。随着源电阻的增加(使用 RADC),保持电容器完全充电所需的时间增加。下图显示了模拟信号源电阻效应。
![1668392709352346.png 8.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392709352346.png)
CADC 的有效充电受 RADC+RAIN 控制,充电时间常数为 tc=(RADC+RAIN)×CADC。如果采样时间小于通过 RADC+RAIN(ts<tc)向 CADC 完全充电所需的时间,则由 ADC 转换的数字值小于实际值。
3.8 信号源电容和 PCB 寄生电容的影响
转换模拟信号时,必须考虑源极电容和模拟输入引脚上的寄生电容。源极电阻和源极电容构成 RC 网络。此外,除非外部电容器(CAIN+Cp)完全充电至输入电压水平,否则 ADC 转换结果可能不准确。(CAIN+Cp)值越大,源频率越受限。源端的外电容和寄生电容分别用 CAIN 和 Cp 表示。
![1668392730632031.png 9.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392730632031.png)
3.9 注入电流效应
任何模拟管脚(或紧密定位的数字输入管脚)上的负注入电流可能会将泄漏电流引入 ADC 输入。最坏的情况是相邻的模拟信道。当 VAIN<VSS 时引入负注入电流,导致电流从 I/O 引脚流出。
![1668392738859736.png 10.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392738859736.png)
3.10温度影响
温度对 ADC 的精度有很大的影响。主要导致两大误差:偏移误差漂移和增益误差漂移。这些错误可以在微控制器固件中进行补偿
3.11I/O 管脚串扰
由于 I/O 之间的电容耦合,切换 I/O 可能会在 ADC 的模拟输入中产生一些噪声。串扰可能是由相互靠近或相互交叉的 PCB 磁道引起的。内部交换数字信号和 I/O 引入高频噪声。切换 I/O 输入输出可能会导致电源中的电压骤降,这是由电流浪涌引起的。穿过 PCB 上模拟输入轨迹的数字轨迹可能会影响模拟信号。
![1668392751409661.png 11.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392751409661.png)
3.12电磁干扰引起的噪声
来自邻近电路的电磁辐射可能会在模拟信号中引入高频噪声,因为 PCB 轨迹可能像天线一样工作。
![1668392764387133.png 12.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392764387133.png)
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 数据表)。
参考电压源设计必须提供低输出阻抗(静态和动态)。寄生串联电阻和电感必须最小化。参考电压上的正确去耦电容器位于非常靠近管脚的位置,提供低参考电压源阻抗。
![1668392785765479.png 13.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392785765479.png)
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 结果,产生原始输入信号的平均值。作为一个例子,该方法可以通过使用与输入信号耦合的三角形发生器来实现(白噪声的产生更为复杂)。必须注意不要修改原始输入信号的平均值(因此,必须使用电容耦合)。下图是微控制器直接生成的准三角形源的一个非常简单的实现。
![1668392814768110.png 14.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392814768110.png)
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 Hz 的梳状滤波器噪声及其谐波抑制)。
–这种方法允许在测量信号中显示谐波部分。
–由于使用了更多的计算能力,因此速度较慢。
ADC 校准减少内部 ADC 错误。然而,内部 ADC 结构必须知道。
必须设计应用程序
–在 ADC 转换过程中使用来自微控制器的最小干扰。
–尽量减少采样和转换过程中的数字信号变化(数字沉默)。
5.1 平均法
平均是一种简单的技术,在这里你可以对一个模拟输入进行多次采样,然后用软件计算结果的平均值。这种技术有助于在模拟电压不经常变化的情况下消除噪声对模拟输入的影响。必须对几个读数进行平均,这些读数都对应于相同的模拟输入电压。确保在转换完成的时间段内,模拟输入保持在相同的电压,否则您将累积对应于不同模拟输入的数字值,并且您将引入错误。
另外抛弃一些明显的因干扰而突变的结果(最低最高法则),对使用平均法也是非常有利的。
5.2 用于交流测量的 FFT
在某些特定情况下,应用程序需要知道带有给定频率。在这种情况下,交流信号的有效值也可以通过使用相对较慢的采样速度
(与测量的信号频率相比)。
例如,当测量交流电源信号时(接近正弦且具有相对较低的谐波含量),足以选择 32 次采样频率大于电源频率(50 赫兹)。
在这种情况下,高达 15 阶的谐波可以获得。主信号中 15 次谐波的振幅很小(下一次阶次谐波可以忽略不计)。电源信号的
计算有效值为由于谐波的有效值被加到总交流谐波值为:
![1668392875249884.png 15.png](https://cdn.eetrend.com/files/ueditor/593/upload/image/20221114/1668392875249884.png)
因此,如果第 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 的影响,有必要尽量减少采样和转换期间的数字信号变化(数字静音)。这是使用以下方法之一完成(在采样和转换期间应用):
来源:敏矽MCU
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。