【STM32】一种实现STM32自带ADC高精度的外围设计,实现ADC一位跳动

    本来这个自带的多通道12位ADC看起来还是挺好用的,3.3V/4096 = 0.8057mv。1毫伏的精度,1M的转换速率,加上DMA已经足以应对很多项目,比如数控电源。但是实际使用发现没法达到1mV的精度,不管是原子的开发板还是某宝买的核心板。查阅过相关资料后发现,ST官方给出了一些指导。比如:使用STM32F2xx和STM32F4xx微控制器时如何提高ADC精度 如何在STM32系列器件获取最佳的ADC精度;

  我们根据这些重新画了板子,实现了理论精度,只有1位数字跳动。可以看到测量最大差值=0.996850-0.996044 V=0.000806 V = 0.806 mv。说明只有最后一位跳动。

【STM32】一种实现STM32自带ADC高精度的外围设计,实现ADC一位跳动_第1张图片

【STM32】一种实现STM32自带ADC高精度的外围设计,实现ADC一位跳动_第2张图片

  外围电路,其中C37看情况选择接不接,1nF左右;R20 C12组成RC低通滤波,Fs = 1/(2*pi*RC):

【STM32】一种实现STM32自带ADC高精度的外围设计,实现ADC一位跳动_第3张图片

  最主要还是加上运放缓冲,使信号变成低阻。

  还需要注意的是稳压芯片的输出纹波尽量小,如果用示波器看有较大纹波可以加上低通滤波器,再接入单片机。

你可能感兴趣的:(STM32)