1ms完成12位转换!老工程师的“单斜率模数转换器”新改进太香了
发布日期:2026-04-03
点击次数:274
很久以前,人类从原始的模拟泥沼中挣脱出来,开始接触数字技术。他们很快注意到并量化了一个根本需求:将他们新获得的量化数值信息与老工程师所构建的经典连续体连接起来。于是,模数转换器(ADC)应运而生。
当然,ADC方案和原理图有很多种。其中最早、最简单的方案之一就是单斜率型ADC。
单斜率模数转换器(ADC)有两种主要类型。其中一种是生成线性模拟电压斜坡并将其与输入信号进行比较。斜坡从零(或接近零)上升到与输入信号相等所需的时间与输入信号的幅度成正比,并以此作为数字转换结果。
在另一种单斜坡转换器中,电容器被充电至输入电压,然后线性下降至零。所需时间与输入电压Vin成正比,并计入转换结果。
虽然简单廉价无疑是优点,但过犹不及。图1中的电路在基本设计的基础上进行了一些改进(成本也略有增加),旨在获得更高的精度(甚至两个数量级)以及更快的速度。

图1:简单快速单斜率(SSSS)ADC双相转换周期。
工作原理如下:
(CONVERT =1)开关U1将C1充电至Vin
(CONVERT=0)C1由Z1Q1提供的100µA电流线性放电。
注意:Z1、C1和R2应为精密型元件。
转换分两个阶段进行,由配置为输出的GPIO位选择(CONVERT/ACQUIRE)。
在采集(1)期间,单刀双掷开关U1将积分电容C1连接到输入源,并将其充电至Vin。充电的采集时间常数为:
C1(RsZ1+U1Ron,+Q2的输入阻抗)=~10µs
要以12位分辨率完成½-lsb精度的充电,需要以下ACQUIRE间隔:
10μs*loge(2(12+1))=90μs
然后,控制微控制器可以将CONVERT返回为零,从而将C1的输入端切换到地,使比较器晶体管的基极变为负电压,电压阶跃为-Vin,再加上“一点点”(~12mV)。
最后一点是由C2提供的,用于补偿Q2有限的电压增益和存储时间所导致的零点偏移。
Q1从饱和状态恢复后,INTECTATE变为正值。在此状态下,直到C1放电完毕,Q1重新导通为止。此时间段为:
Vin*C1/100µA=200µs/v=最大1ms
如果连接的计数器/外设以20MHz运行,则最大计数累积和转换分辨率将为4000,即11.97位。
图2示意了这种1毫秒或约12位的转换周期。注意其固有特性包含良好的积分非线性(INL)和微分非线性(DNL)。

图2:SSSS ADC波形。采集时间(12位)为90µs。积分时间最大为1ms(VinC1/Iq1=200µs/V)。幅度为5Vpp。
当然,并非所有信号源都能很好地承受这种转换顺序带来的负载,也并非所有应用都会发现可用的LM4041基准和R1C1的容差足够精确。
图3展示了针对这两个限制的解决方法。典型的RRIO CMOS放大器用于A1可以消除输入负载问题,而R5的微调则提供了一种便捷的方法来改进转换校准。

图3:A1输入缓冲器卸载Vin,R5校准微调提高精度。
声明:
本文来源于网络 ,转载仅为学习参考,如有问题请联系,谢谢。
深圳市正芯科技有限公司http://www.pluschiptech.com









