MCU ADC如何测量超过VCC的电压?

假设mcu的供电是3.3v,adc能够测量的电压范围是0-3.3v,如果要测量如电池电压6v的这种场景,该怎么办呢?
很容易能够想到的方法是先进行电阻分压,将高于3.3v的电压分到adc的量程内进行采集,最后再换算回实际电压。这就引入了一个问题,分压电压该选多大?比如进行1/2分压,是选2个1kω串联还是选两个1mω串联呢?电阻值能否随意选择呢?
先说结论:电阻不能随意选,首先它不能太大!
以stm32f103为例子,在数据手册中可以看到外部输入阻抗有一个最大值50kω的要求。
这个值是由下面的计算公式算出来的,
需要注意的是输入阻抗的最大值并不是固定不变的,不是说只要小于50kω就可以,因为它和adc时钟频率、采样周期、转换位数都有关系。比如上面表格中,当adc时钟频率14mhz,采样周期1.5 cycels,转换位数12时,最大输入阻抗就是0.4kω。
tab 46标称的最大输入阻抗50kω,是在adc时钟频率14mhz,采样周期55.5 cycles,转换位数12时计算出来的值,它同时也是adc模块所能接受的最大值 (受硬件决定,这也是为什么tab 47最后两行写na的原因,虽然根据公式也能算出来一个比50更大的值)。
简单来说,可以这么理解:因为adc内部的采样保持电路(电容组成),如果外面的电阻大,就会导致rc电路充电时间长,如果采样周期小,就会引起电容在没完全充满电的情况下就被采集,自然adc得到的数就不准。
从提高adc采样速率的角度来说,电阻越小,rc充放电速度快,adc的采样速率就能更高。不过电阻小,会增大功耗,在对功耗有要求的场合,这个电阻还不能选的太小。
对于必须低输入阻抗,同时又需要低功耗的场合,可以先用大电阻分压,后面再用运放跟随器的方式。
电阻大小的问题说完了,还有最后一个问题,等效输入阻抗和第一幅图里的两个串联分压电阻是什么关系?等效输入阻抗是r1、还是串联值r1+r2,还是并联值r1*r2/r1+r2呢?这个问题曾困惑了我好久,当年上学时学的理论知识全交给老师了。
这个问题可以这么简单想,假设r2是0ω,进入到adc的电压就是gnd,和r1是多大就没关系了,等效输入阻抗就是0ω。再假设r2无穷大,等于是断开,电阻只有r1了。这么一想答案就清晰了吧,等效输入阻抗是两个分压电阻的并联。


特斯拉将在国内设立研发中心 重塑汽车产业竞争格局
华为新专利曝光,下半年自研芯片或有大动作?
Fetch推可取代叉车和人类员工的仓库机器人
我国三大运营商表态将积极整治垃圾短信和骚扰电话
IGBT安全工作区(SOA)知多少
MCU ADC如何测量超过VCC的电压?
常用的电路基础公式汇总
嘉立创FPC白膜上线!助力照明行业新产品研发!
在Auto CAD环境下实现制表功能
监控摄像头有多少种类应该如何选型
Soitec与三星晶圆代工厂扩大合作 保障FD-SOI晶圆供应
滴滴发布定制网约车D1 实现从软件算法到软硬件一体化的跨界转型
TDA7482典型应用电路
到底是什么让机器学习达不到我们的期待呢?
正点原子开拓者FPGA Qsys视频:Hello World
台湾聚积联合欣兴推出以PCB为基板之Micro LED产品
大华股份参与制定的《数据集成和服务 能力评估体系 能力要求》标准正式发布
光纤传输原理_光纤的发展及应用详解
虹科新品 | 用于工业自动化系统的压力传感器和流量计
微处理器芯片的位数指的是什么