为什么MCU在ADC采样时IO口有毛刺?

        大家在使用MCU内部ADC进行信号采样一个静态电压时,可能在IO口上看到这样的波形。这个时候大家一般会认识是信号源有问题,但仔细观察会发现这个毛刺的频率是和ADC触发频率一样的。

        那么为什么MCU在ADC采样时IO口会出现毛刺呢?这个毛刺对结果有什么影响吗?让我们一起研究下。首先我们先看下GD32 MCU的ADC内部采样电路的原理示意图(仅举例),这个电路很简单,MCU采样保持电路可以等效为一个开关、一个采样电阻和采样电容,当然了后面还有逐次逼近式的转换电路。

         所以当开关闭合时,外部的信号会通过开关经过采样电阻对采样电容进行充电或放电,此时会导致外部电压瞬间变化,这个过程内部电压和外部电压的变化可以等效为如下图所示。

         

从波形图里可以看到是一个向下的毛刺,当然如果ADC在扫描模式采样多个信号时,也可能出现电容对外放电,则会出现向上的毛刺,比如下图这个波形。

      这个毛刺对结果有什么影响吗?这个需要根据这个ADC通道所配置的采样保持时间来判断了。我们可以用程序配置的采样保持周期和ADC时钟计算出ADC采样开启的时间。如果从毛刺产生时刻开始,经过采样开启时间后电压已经恢复平稳,那么此时这个平稳的电压和ADC采样电容上的电压一致,接下来的ADC转换也就能得到正确的结果。如果采样时间结束时信号还在毛刺阶段,则采样结果就会出现偏大或偏小。

        那么如何从软硬件方面优化MCU的ADC性能?发散思维一下。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值