2、核心器件选型:主控MCU、ADC芯片、前端模拟开关

好,咱们进入第二章。这一章我打算聊聊核心器件的选型。说白了,就是决定这块万用表用谁的“大脑”、用谁的“眼睛”,以及怎么把信号“喂”进去。

我个人习惯,在画原理图之前,先把这三样东西定死。因为它们的引脚、封装、供电要求,直接决定了你后面PCB的布局和走线。选错了,后面全得重来,那滋味可不好受。

2.1 主控MCU:STM32还是ESP32?

很多朋友一上来就纠结:用STM32还是ESP32?我的建议是,先别急着站队,先看需求。

STM32F103系列,我用了快十年了。它最大的优点是稳定、资料多、外设丰富。你想想看,一个万用表需要什么?需要ADC采样、需要SPI/I2C通信、需要驱动LCD屏幕、需要处理按键中断。这些STM32的硬件资源几乎都是现成的,而且库函数写得非常成熟。

我在项目中遇到过用STM32做高精度数据采集的场景。当时需要同时采集4路模拟信号,还要实时显示波形。STM32的DMA配合定时器,几乎不占CPU资源,跑起来非常稳。

ESP32呢?它的强项是Wi-Fi和蓝牙。如果你的万用表需要联网、需要手机APP控制、需要上传数据到云端,那ESP32是首选。但要注意,ESP32的ADC精度一般,内部参考电压也不太准。做万用表的话,我建议只用它做控制和通信,模拟采样部分交给外部ADC芯片。

嗯,这里要注意一点:ESP32的功耗比STM32高不少。如果你打算做便携式、电池供电的万用表,STM32的低功耗模式会更友好。

我的选型结论:

  • 纯手持、高精度、低功耗 → STM32F103(性价比之王)
  • 需要联网、物联网功能、远程监控 → ESP32(但外挂高精度ADC)
  • 预算充足、追求极致性能 → STM32H7(带硬件浮点运算,适合FFT分析)

2.2 ADC芯片选型:ADS1115 vs AD7190

ADC是万用表的“眼睛”。眼睛好不好,直接决定了你测电压准不准。

ADS1115,我估计很多朋友都用过。它是个16位的Δ-Σ ADC,内置参考电压,I2C接口,4个单端通道或者2个差分通道。优点是小巧、便宜、好焊接。缺点也很明显:采样率最高只有860 SPS,而且噪声性能一般。

我记得有一次,我用ADS1115做一款简易万用表,测1V以下的电压时,最后一位数字总是跳来跳去。后来查了数据手册才发现,它的有效分辨率在高速模式下只有12位左右。所以,ADS1115适合做入门级、三位半的万用表。

AD7190就不一样了。这是一颗24位的Δ-Σ ADC,自带可编程增益放大器(PGA),内部温度传感器,还有专门的参考电压输入。它的噪声极低,在增益为128时,峰峰值噪声只有几十纳伏。说白了,这就是专业万用表才会用的芯片。

我做过一个项目,要求测量微伏级别的信号。当时试了好几种ADC,最后选了AD7190。配合外部高精度参考电压,实测分辨率能达到0.1μV。当然,代价是价格贵了10倍,而且封装是TSSOP,手工焊接有点费劲。

参数 ADS1115 AD7190
分辨率 16位 24位
采样率 最高860 SPS 最高4.8 kSPS
内置PGA 有(增益1~128)
接口 I2C SPI
参考电压 内置(精度一般) 外部(可接高精度基准)
典型应用 三位半万用表、传感器采集 六位半万用表、精密测量
价格 约5元 约50元

小提示:如果你选AD7190,记得在PCB布局时,把模拟地和数字地严格分开。我见过有人把AD7190的AGND和DGND直接连在一起,结果噪声大了好几倍。嗯,这个坑我踩过。

2.3 前端模拟开关选型

万用表要测电压、电流、电阻,还要切换量程。这些切换工作,靠的就是前端模拟开关。

模拟开关的核心指标有三个:导通电阻漏电流带宽

导通电阻越小越好。你想想看,如果开关本身有100Ω的电阻,测低阻值电阻时,误差会非常大。我一般选导通电阻在10Ω以下的型号。

漏电流也很关键。测高阻值电阻(比如10MΩ)时,开关的漏电流如果达到纳安级别,就会引入明显的测量误差。我曾经用过一个便宜的模拟开关,漏电流在高温下飙到了几十纳安,测出来的电阻值完全没法看。

带宽决定了你能测多高频率的信号。对于直流万用表,带宽要求不高,几百kHz就够了。但如果你要做交流电压测量,带宽至少要到1MHz以上。

常用的型号有:

  • CD4051:经典8选1模拟开关,导通电阻约100Ω,适合低速、低精度场景。优点是便宜、好买。
  • ADG708:8选1,导通电阻约4Ω,漏电流极低(pA级),带宽20MHz。我比较推荐这款,性能均衡。
  • MAX4051:与CD4051引脚兼容,但导通电阻更低(约30Ω),适合替换升级。

注意事项:模拟开关的电源电压一定要和输入信号范围匹配。比如你用的是±5V供电的开关,输入信号就不能超过这个范围。否则,开关内部的ESD保护二极管会导通,轻则测量不准,重则烧毁芯片。我曾经因为没注意这个,烧了三个ADG708,心疼啊。

好了,核心器件选型就聊到这里。下一章,咱们开始画原理图,把这三个芯片连起来。到时候我会详细讲每个引脚怎么接、去耦电容怎么放、模拟地怎么处理。嗯,那才是真正动手的时候。