☰
单极性DAC转双极性输出:拓扑、误差预算与校准实战
2026/10/28 15:27:20 网站建设 项目流程

1. 先把"单极性转双极性"这件事说透

单极性DAC转双极性输出,说白了就是一件翻译工作:DAC只会说0到Vref这一段"正整数"的语言,而你的后级电路——可能是伺服驱动器、可能是音频功放、可能是振动台功放——只听得懂"-Vfs到+Vfs"这种带符号的语言。中间这层翻译,绝大多数时候落在两颗电阻加一颗运放上,看起来是全板子最简单的电路,但只要增益上到8倍、10倍,前面所有不起眼的失调、公差、噪声都会被同比例放大,最后你在示波器上看到的是一条歪掉的斜线,而不是你以为的那条从负到正的完美直线。

我做过不少带双极性输出的采集与激励板卡,最深的感受是:这类电路画原理图只要十分钟,调通并保证全温区精度却可能要两天。原因不在于运放不够好,而在于很多人从一开始就没算清楚映射关系——DAC码值、基准电压、输出摆幅、增益电阻、偏置电压这五者之间的账,只要有一笔算错,后面所有调试都是白费力气。

这篇内容适合三类人看:第一类是刚接手DAC输出调理、正在画第一版原理图的硬件新手;第二类是已经画出来但发现输出不对称、零点飘、带载就塌的调试者;第三类是想把精度从12位做到16位、需要重新审视误差预算的老手。我会把拓扑选择、传函推导、电阻取值、器件筛选、上电调试、误差校准、故障排查这几件事按实际干活顺序讲一遍,公式都给到位,参数都带计算过程,你拿着自己的DAC参数直接替换就能用。

另外提前说一句立场:这个电路里最贵的不是运放,是你的时间。多花两块钱买0.05%的匹配电阻网络,比你在实验室里花两天做软件补偿划算得多。后面我会反复回到这个观点。

2. 映射关系先算明白,再动烙铁

2.1 从DAC码值到双极性电压的完整链条

先把账算清楚。一个N位、基准为Vref、输出范围0~Vref的电压型DAC,码值D对应的输出是:

Vdac = D / 2^N × Vref (D = 0 ~ 2^N - 1)

你要的目标输出是:

Vout = (D / 2^N - 0.5) × 2 × Vfs

也就是D=0时输出-Vfs,D=中点时输出0V,D=满量程时输出接近+Vfs。把两式一联立,就得到这级调理电路必须实现的传递函数:

Vout = G × (Vdac - Vref/2) 其中 G = 2 × Vfs / Vref

这个式子看着简单,信息量其实很大。第一,它要求电路做减法,减掉的量是Vref的一半,不是随便一个偏置;第二,它要求电路有确定的增益G,G由输出摆幅和DAC满量程共同决定;第三,减法的那个"Vref/2"必须和DAC用的是同一个基准,否则基准的温漂会以差分形式直接变成输出漂移。很多板子温漂大,根子就在这里——DAC用了一颗基准,偏置电压用分压电阻从电源上取,两个源头各漂各的,谁也救不了。

举个具体例子:16位DAC,Vref=2.5V,你要±10V输出。那么G=2×10/2.5=8。也就是说,2.5V的DAC摆幅要被放大8倍,同时整体下移1.25V对应的量。8倍增益不算高,但也绝对不算低,运放的失调会被放大到9倍(同相增益1+Rf/Rin),一颗Vos=200µV的普通运放,光失调就贡献1.8mV输出误差;而16位在±10V下的1个LSB只有305µV。你看,随便一颗运放就把精度吃掉6个码。

2.2 三种主流拓扑,先看清代价再选

市面上做电平搬移的路子基本就三条,我把它们的实际表现列出来:

拓扑传递函数优点实际代价
反相求和Vout = -Rf(Vdac/R1 + Voff/R2)虚地,共模误差几乎为零,线性度最好输出反相,需要软件取反或再加一级反相;输入阻抗由R1决定
差分(减法)Vout = (Rf/Rin)(V2 - V1)极性正,一级搞定,四电阻匹配后有共模抑制对四颗电阻匹配度敏感,同相端有分压,源阻抗必须低
单电源电平搬移Vout = (1+Rf/R1)(Vdac) - (Rf/R1)Vmid只需单电源,成本低输出围绕Vmid摆动,摆幅受限,无法真正到负压

反相求和是我在最讲究线性度的场合的首选。它把DAC输出接到虚地点,运放反相端电位恒定为0,DAC输出级看到的负载恒定,共模误差、输入电容非线性这些因素基本被消掉了。代价是输出极性反了,解决办法有两个:软件里把码值取反(D→2^N-1-D),或者后面再跟一级增益为-1的反相器。软件取反零成本,但如果你的DAC同时还被别的通道共用、或者码值语义有约定,那就得加一级反相。加一级反相意味着多一颗运放、多一份噪声和失调,这笔账要提前算。

差分拓扑是另一条主流路线,它的好处是极性天然正确,且四颗电阻严格匹配时共模抑制很好。但它有个隐蔽的坑:同相端的输入阻抗不是无穷大,而是R3加R4的串联值(在标准接法里),如果你的DAC输出缓冲驱动能力弱,或者走线长,这个负载会引入增益误差。我在一块板上就吃过这个亏,DAC输出串联了100Ω保护电阻,加上差分网络2k的输入阻抗,实际增益比设计值低了近5%,满量程直接少了1V。

2.3 选拓扑之前必须先确认的三件事

在画图之前,有三个问题必须先有答案,否则选型就是拍脑袋。

第一,DAC输出是电压型还是电流型。电压输出型内部带缓冲,输出阻抗低(几十欧以内),可以直接进电阻网络,但仍要注意它的容性负载能力和最小负载电阻。电流输出型(电流舵结构)必须先做I/V转换,转成电压后再进双极性调理,或者在I/V级就把偏置电流叠进去,一步到位。后者更省器件,但对偏置电流源的精度要求极高,我一般不建议新手走这条路。

第二,DAC的输出范围真的是0~Vref吗。很多DAC内部有增益配置,可以是0~Vref、0~2Vref,甚至可以通过寄存器切到双极性模式直接输出±Vref。如果你手上的DAC本身就支持双极性输出模式,那这篇文章的大部分内容你可以跳过,直接用内部模式更省事、更准。我见过有人没翻数据手册的输出范围章节,硬加了一级外部调理,结果两处增益叠加,输出直接超轨。

第三,后级到底能接受多大的输出阻抗和容性负载。双极性输出往往要经过连接器、排线甚至长电缆送到功放或执行机构,电缆电容动辄几百pF,运放直接驱动必然振铃。这一点在选运放的时候就要把"容性负载能力"列进指标表,不能等振铃了再回头加隔离电阻。

3. 反相求和拓扑:算错一颗电阻就全盘皆输

3.1 传函推导与电阻取值的完整过程

反相求和的标准接法:DAC输出经R1到虚地,偏置电压Voff经R2到虚地,反馈电阻Rf从输出接回虚地。传递函数是:

Vout = -Rf × (Vdac/R1 + Voff/R2)

为了让两个输入的权重对称(这样零点才落在码值中点),取R1=R2=R。于是:

Vout = -(Rf/R) × (Vdac + Voff)

要求D=0时Vout=+Vfs,D=满量程时Vout=-Vfs(注意反相),代入Vdac=0和Vdac=Vref:

Vfs = -(Rf/R) × Voff -Vfs = -(Rf/R) × (Vref + Voff)

两式相减得 2Vfs = (Rf/R)×Vref,即Rf/R = 2Vfs/Vref = G,代回得Voff = -Vref/2。

结论很清楚:反相求和要产生正负对称的输出,偏置必须是一个负的半基准电压。这就带来一个现实问题——你手上通常只有正基准,负压得另外产生。两种做法:用运放做一个增益-1的反相器把Vref/2变成-Vref/2;或者把偏置直接接到一个负基准上。前者多一颗运放但精度可控,后者需要负基准芯片,成本高一点但省事。

电阻取值有个经验区间:R一般取1k~10k。太小则DAC输出级要吐电流,超出它的驱动能力,同时功耗上升;太大则运放输入偏置电流和PCB漏电流开始显形,噪声也变大。我一般取R=2k,Rf=2k×G。以上面的例子G=8,就是R=2k、Rf=16k。16k用0.1%薄膜电阻,配合2k,增益误差理论上是0.2%量级,在±10V上就是20mV——对12位勉强够,对16位显然不够,所以要么上0.05%匹配网络,要么留校准。

3.2 为什么DAC输出后面最好加一级缓冲

很多人图省事,DAC输出直接怼到R1上。短距离、低速、低精度的场合这没问题,但只要你的DAC是逐次逼近型或者带采样保持输出,它的输出端在每次更新码值后都有一个建立过程,输出阻抗在建立期间是变化的。这个变化的阻抗和R1串联,直接变成增益误差,而且是随码值变化的误差——这就不是简单的偏移或增益问题了,是非线性。

加一级单位增益缓冲,把DAC的输出"锁"住,R1看到的是一个恒定低阻源,问题就解决了。缓冲运放不需要多好,但要满足三点:输入偏置电流小(不然在DAC的输出阻抗上产生压降)、输出能驱动R1、带宽足够(至少是被调理级带宽的3倍以上,避免相位叠加)。我通常用同一封装里的另一路运放做缓冲,省一颗器件。

这里有个细节值得单独说:缓冲运放的反相端要直接接到输出端,反馈走线尽量短,且不要从R1的焊盘中间穿过去。听起来像玄学,但我在一块16位板上实测过,反馈线绕了3mm从R1下方穿过,输出噪声底噪直接抬高了约20µVrms,够16位喝一壶的。

3.3 反相结构的两个真实代价

第一个代价是输入电容引起的相位滞后。虚地点看似稳定,实际上DAC输出缓冲的输出电容、R1的寄生电容、运放反相端的输入电容三者并联在虚地点,和Rf形成一个极点。G=8时这个极点可能落在几百kHz,如果运放的单位增益带宽不够,相位裕度会被吃掉,阶跃响应出现振铃。解决办法是在Rf两端并一颗几pF到几十pF的反馈电容Cf,取值按 Cf ≈ 1/(2π×Rf×fp) 估算,fp是你希望的主极点位置。Cf不能太大,否则压摆率被拖慢,建立时间变长。

第二个代价是输出极性。前面说过软件取反最省事,但要提醒一句:如果你在软件里取反,那么"DAC码值"和"物理输出电压"之间的对应关系就和别的通道相反了,后期做多点校准、做故障诊断、写测试脚本的时候特别容易搞混。我的做法是在驱动层就把符号处理掉,对外只暴露"物理量到码值"的接口,硬件层的反相不外泄。

4. 差分拓扑:四颗电阻的匹配度决定成败

4.1 标准四电阻接法与增益核算

差分拓扑的标准接法:V2(DAC缓冲输出)经R3到同相端,同相端经R4接地;V1(偏置)经R1到反相端,反馈电阻R2接输出。当 R2/R1 = R4/R3 时:

Vout = (R2/R1) × (V2 - V1)

注意这里没有额外的分压系数,因为同相端的分压比 R4/(R3+R4) 和同相增益 (R1+R2)/R1 恰好抵消,前提是匹配条件成立。这一点经常被算错,有人按分压公式单独算一遍,结果增益算成一半。

要实现 Vout = G×(Vdac - Vref/2),直接取 R2/R1 = R4/R3 = G,V1 = Vref/2。G=8时取 R1=R3=2k、R2=R4=16k。此时反相端对地等效阻抗是 R1||R2 = 1.78k,同相端是 R3||R4 = 1.78k,两边相等,运放输入偏置电流在两端的压降相互抵消,这是一条很重要的设计准则——差分电路的四个电阻不仅要比例匹配,还要让两端的戴维南阻抗相等,否则偏置电流会变成一个随温度漂移的失调。

4.2 偏置源的内阻是隐藏杀手

V1 = Vref/2 这个电压,很多人直接用两颗等值电阻从基准分压得到。问题在于分压点的戴维南内阻是两颗电阻的并联值,比如两颗10k并联就是5k。这个5k和R1=2k串联,直接改变了反相支路的增益,而且分压点的电压还会被R1拉低。算一笔账:Vref=2.5V,分压得1.25V,内阻5k,接上R1=2k到虚地,虚地电位为0,那么实际流过的电流是1.25/(5k+2k)=178µA,原本应该是1.25/2k=625µA,偏置电流只剩不到三成,输出直接塌掉。

所以偏置源必须是低阻的。三个办法:分压电阻取小(比如100Ω+100Ω,但静态功耗25mA,不划算);分压后加一颗运放做电压跟随(推荐,成本一颗运放,精度好);直接用基准芯片输出的中点(有些基准有Vref/2输出引脚,最省事)。我基本都用第二种,跟随运放的失调要选小的,因为它会以G倍出现在输出上。

4.3 输出摆幅要按最坏情况核对

这一点是差分拓扑最容易翻车的地方,而且往往是"看起来能用,实际削顶"。

以±10V输出、G=8为例,运放输出要真的到±10V。如果你的运放用±12V供电,而它是普通非轨到轨输出结构,输出距离正负轨各有1~1.5V的压降,那最大只能到±10.5V左右,看似够,但这是典型值,低温、重载、批次差异下可能只剩±9.5V,满量程直接削掉。所以供电要留足余量,±15V供电是稳妥选择;如果坚持±12V,那必须选输出摆幅能到轨前0.2V以内的轨到轨输出型。

还有一条容易忽略:同相端的共模输入范围。DAC输出在0~2.5V之间变化,同相端电压也在这个范围(经过分压后更小),双电源供电时毫无压力。但如果你的系统是单电源+5V,运放的同相输入端下限可能只到0V附近甚至不到,DAC输出接近0V时运放就进入非线性区,输出出现"平底"。单电源方案必须选输入共模范围包含负轨(或真到轨)的运放,这一点在数据手册里要翻到"输入共模电压范围"那一行,别看"轨到轨"三个字就下单——很多标着轨到轨输入的器件,实际共模范围是V-到V+-1.2V。

5. 器件选型:参数表里没写的那几行才是关键

5.1 运放要看的六项指标与筛选顺序

我把选型指标按"会不会直接毁掉精度"排了个序:

指标为什么关键建议门槛(16位/±10V场合)
输入失调电压Vos被(1+Rf/Rin)放大后直接变输出偏移≤50µV,且低温漂
失调温漂全温区偏移变化的根源≤0.5µV/℃
输出摆幅决定能否真的到±10V距轨≤0.3V(负载2k时)
输入共模范围单电源场景下决定线性区含负轨或真轨到轨
增益带宽积GBW决定建立时间和小信号精度≥10MHz(G=8时闭环1.25MHz)
容性负载能力决定带电缆会不会振铃数据手册标注直接带100pF稳定

失调电压是第一位的,因为它没法用软件完全消掉(会随温度变),而增益误差可以用校准消掉。这就是为什么我宁可要一颗Vos=25µV、增益误差靠电阻校准的运放,也不要一颗Vos=500µV、号称 resistors 内置匹配的器件。

第二重要的是输出摆幅。注意数据手册里的输出摆幅是在特定负载下给出的,常见条件是负载2k到地、供电±15V。你的实际负载可能是10k,那摆幅会好一些;也可能是500Ω,那摆幅会差很多。选型时按最坏负载核对。

5.2 电阻与基准:别在便宜的地方省钱

电阻的选型逻辑很直接:增益误差主要来自电阻比例公差。Rf和R的比值误差约等于两者公差之和(最坏情况),两颗0.1%电阻最坏给出0.2%的增益误差。在±10V上是±20mV,相当于16位下的65个码。所以:

  • 12位场合(1LSB≈4.9mV),0.1%电阻够用,剩5mV误差在可接受范围;
  • 14位场合,建议0.05%或者用匹配网络;
  • 16位场合,要么用0.01%~0.05%的匹配电阻网络(四颗在一个封装里,同批同温度,跟踪性好),要么老老实实做两点校准。

匹配网络的价值不只是初始精度,更在于温漂跟踪。四颗独立电阻即使都是25ppm/℃,焊在板子不同位置,温度梯度不一样,比例就会漂;而同一个封装里的四颗电阻基本同温,比例漂移能压到5ppm/℃以内。这个差别在宽温区产品上是决定性的。

基准源这边,关键指标是初始精度、温漂和噪声。初始精度可以校准,温漂不行(除非你做全温区查表补偿),所以温漂优先。另外基准的输出噪声会直接调制到偏置电压上,再以G倍出现在输出——一个噪声密度100nV/√Hz的基准,在100kHz带宽下是31µVrms,乘以8就是250µVrms,16位系统里这就是接近1个LSB的噪声。所以基准后面必须加RC滤波,截止频率按你的输出更新率来定,一般是几十Hz到几kHz。

5.3 供电与去耦的具体做法

双极性输出的运放,供电我一般这样处理:模拟正负压各自用一颗10µF钽电容加一颗100nF陶瓷电容就近去耦,位置放在运放电源引脚旁边5mm以内。负压那边经常被忽略,很多人只在正压放了电容,结果负半周输出噪声明显大于正半周。这个现象我在频谱上见过很多次,负轨去耦不足会导致正负半周的非对称失真。

还有一条:基准的供电要和运放的供电分开滤波。基准对电源纹波极其敏感,如果和运放共用一条走线,运放的输出电流波动会顺着电源线污染基准电压。做法是基准前串一颗10Ω电阻加10µF电容做RC滤波,简单有效。

6. 完整实操:把0~2.5V的16位DAC搬成±10V

6.1 参数计算全过程

设定:16位电压型DAC,输出0~2.5V,目标±10V,更新率100kSPS,全温区0~70℃。

第一步算增益:G = 2×10/2.5 = 8。

第二步选拓扑:需要极性正确、单级完成,选差分拓扑。R1=R3=2kΩ,R2=R4=16kΩ,均用0.05%薄膜电阻,25ppm/℃。

第三步算偏置:Voff = Vref/2 = 1.25V,用基准分压后加电压跟随器,跟随器用低失调运放(Vos≤50µV)。

第四步核输出摆幅:运放供电±15V,选轨到轨输出型,2k负载下输出可到±14.8V,±10V有4.8V余量,安全。

第五步核带宽:G=8,若选GBW=10MHz的运放,闭环带宽1.25MHz,对应时间常数约0.13µs,建立到16位精度(约11个时间常数)需要1.4µs,满足100kSPS(10µs周期)要求,余量充足。

第六步核噪声:运放电压噪声密度8nV/√Hz,闭环带宽1.25MHz,噪声增益9,输出噪声≈8nV×√(1.25M×1.57)×9≈320µVrms。这个数值偏大,说明带宽给太宽了。在反馈电阻上并22pF电容,把闭环带宽压到约450kHz,输出噪声降到约190µVrms,同时建立时间仍在2.5µs左右,可以接受。

这里插一句我的习惯:噪声和建立时间是一对,别只优化一头。DAC后面通常还有保持或采样环节,你把带宽压太狠,建立不完,误差比噪声还大。一般按"建立时间不超过更新周期的1/3"来定带宽,剩下的靠滤波。

6.2 原理图与布局的几条硬规矩

原理图上要注意的:DAC输出先过缓冲,缓冲输出串22Ω电阻再进差分网络(隔离容性负载和抑制振铃);偏置跟随器输出串10Ω后接R1;反馈电容Cf=22pF直接跨在R2两端,走线最短。

布局上的几条经验,都是踩出来的:

  • 差分四颗电阻围绕运放摆放,反相端和同相端的走线长度尽量一致,这是为了让两端的寄生电容对称,否则共模抑制会退化。
  • 模拟地和数字地单点连接,连接点放在DAC下方,不要让数字回流路径穿过差分网络下方。
  • 基准和偏置部分远离DAC的数字接口线(时钟、片选、数据线),这些线是板上最强的干扰源。
  • 输出连接器旁边放一颗100pF到地,但如果后级是长电缆,这颗电容要改成串阻加电容的形式,否则运放直接看到电缆电容会振铃。

6.3 上电调试的六步顺序

我调这类电路从来不会一上电就全码扫描,按顺序来能最快定位问题:

  1. 不焊运放,先量基准。用六位半表量Vref和Voff,确认在±0.1%以内。基准不对,后面全白搭。
  2. 焊运放,给中点码。DAC写0x8000,量输出应为0V。此时偏差就是整个链路的失调,包括运放Vos、偏置误差、电阻失配。我一般要求这个值在±2mV以内,超过就说明偏置源或电阻有问题。
  3. 量两端码。写0x0000量-Vfs,写0xFFFF量+Vfs(注意应该是满量程减1个LSB)。这两个值和理论值的差就是增益误差。
  4. 扫五个点:0、1/4、1/2、3/4、满量程,算线性度。如果中间点和两端点不在一条直线上,说明有非线性,重点查运放的共模范围和输出摆幅。
  5. 带载复测。接上实际负载(或等效电阻+电容),重测两端码。带载后摆幅塌了,就是驱动能力或供电余量问题。
  6. 看阶跃。用DAC做0到满量程的方波输出,示波器看建立过程,振铃超过10%就加/调Cf。

注意:第2步量到的零点偏差,不要急着用软件补。先判断它是固定偏移(可以用软件补)还是随码值变化的偏移(补不了,必须改硬件)。判断方法很简单:在0x8000附近写几个相邻码值,看输出是否单调、步进是否均匀。不均匀就是硬件非线性。

6.4 软件侧的映射与校准接口

驱动层我一般写成三段式:

/* 第一段:物理量转归一化 */ double norm = (target_voltage - (-VFS)) / (2.0 * VFS); /* 0.0 ~ 1.0 */ /* 第二段:归一化转理想码值 */ uint32_t code = (uint32_t)(norm * 65535.0 + 0.5); /* 第三段:两点校准修正 */ code = (uint32_t)(code * gain_cal + offset_cal);

gain_cal和offset_cal来自出厂校准:在码值0和65535处各测一次实际输出,解一个二元一次方程。校准后残余误差主要来自线性度和温漂,而不是增益和偏移。

7. 误差预算与校准:把每一毫伏都找到出处

7.1 一份能落地的误差预算表

做16位设计,必须把误差拆开算,不然你不知道该改哪里。以上面的设计为例:

误差源典型值折算到输出说明
运放Vos50µV0.45mV乘噪声增益9
Vos温漂(0~70℃)0.5µV/℃0.32mV70℃跨度
偏置跟随器Vos50µV0.4mV乘G=8
基准初始精度0.05%0.5mV乘G后
基准温漂3ppm/℃3.4mV70℃最坏
电阻比例失配0.05%4mV±10V全摆幅
DAC自身INL±2LSB0.6mV16位典型
合计(RSS)—约5.6mV约18个LSB

看这张表就明白了:电阻失配和基准温漂是两大头,加起来占了绝大部分。所以想提高精度,优先级是:换匹配电阻网络 → 换低温漂基准 → 换低失调运放。运放Vos反而是最容易满足的一项,别在这里过度投入。

7.2 两点校准和三点校准怎么选

两点校准能消掉增益和偏移,但消不掉二阶非线性。如果实测发现中间点偏离直线超过1个LSB,就上三点校准:测0、中点、满量程,用二次多项式拟合。三点校准的代价是需要一块可信的外部表,而且校准点的选择要覆盖实际使用区间。

我的实际经验是:16位系统做两点校准后,多数情况下残余误差在±3LSB以内;如果超过这个数,说明硬件有问题(非线性),校准只是掩盖,不是解决。这时候应该回去查运放的共模范围、输出摆幅和电阻匹配,而不是加校准点。

7.3 温漂的处理思路

温漂没法靠单点校准消掉,只能靠两件事:选低温漂器件、做温度补偿。前者是设计问题,后者是生产问题。

如果产品必须全温区保证精度,实用做法是在板子上放一颗温度传感器,出厂时在几个温度点做校准,把系数存进EEPROM,运行时按温度查表修正。这套流程成本不低,所以大多数工业产品会放宽全温区指标,只在常温保证高精度,全温区保证一个较宽的指标——这是工程取舍,不是偷懒。

8. 常见问题速查与排查实录

8.1 症状对照表

现象最可能的原因快速验证方法
输出正负不对称偏置电压不是精确的Vref/2写中点码量输出,看是否偏离0V
满量程削顶供电余量不足或运放非轨到轨空载量输出上限,再带载复测
输出整体偏移几毫伏偏置跟随器Vos或电阻失配短接DAC输入到地,看输出偏移
输出有台阶或跳变DAC码值更新不同步或毛刺单步递增码值,观察输出
高频振铃容性负载或反馈走线过长输出串100Ω再测
噪声明显偏大基准噪声或负轨去耦不足示波器AC耦合看噪声频谱
温升后精度变差电阻温漂或基准温漂热风枪局部加热,观察漂移

8.2 几个我踩过的坑

第一个坑:DAC输出串联电阻太大。我为了保护DAC输出串了200Ω,结果和差分网络的2k形成分压,增益直接掉了9%。后来改成22Ω,问题解决。串联电阻的作用是隔离容性负载,22~47Ω就够了,别贪多。

第二个坑:偏置用的是电源分压而不是基准分压。早期图省事,从+5V用两颗电阻分出2.5V当偏置,常温校准后精度看着挺好,一到夏天输出整体偏了十几毫伏——因为5V电源本身的温漂和负载调整率都远大于基准。从这以后,偏置只从基准取。

第三个坑:负电源去耦只放了一颗0.1µF。负半周输出噪声比正半周高出一截,怎么查都查不到。后来在负轨加了10µF钽电容,噪声立刻对称了。负轨的电源阻抗通常比正轨高,去耦电容要加倍。

第四个坑:四颗电阻用了不同批次的货。比例算得再准,不同批次温度系数不一致,温漂还是大。后来统一用匹配网络,问题根除。这个教训值两块钱。

8.3 一个容易被忽略的细节:上电顺序

双电源系统里,正负电源的上电顺序如果不一致,运放会有一段时间处于单电源工作状态,输出可能出现大的瞬态,严重时会通过反馈网络冲击DAC的输出引脚。防护办法是在DAC输出和运放输入之间串限流电阻(就是前面说的22Ω),并在运放输入端加一对反向并联的肖特基二极管到地,把瞬态钳在安全范围。这个细节在小批量板上经常被省掉,量产时才发现偶发损坏。

9. 最后说几句实在的

这套电路我前后做过七八个版本,从12位一路做到16位,最大的体会是:精度不是靠某一颗好器件堆出来的,是靠每一处都算清楚、每一处都不留隐患攒出来的。运放选得再好,偏置从电源分压取,全温区照样崩;电阻用到0.01%,反馈走线绕一圈,噪声照样超标。这类电路的门槛不在原理,在细节的完整度。

如果你正准备画第一版,我的建议是先按最保守的方案来:差分拓扑、双电源±15V、匹配电阻网络、基准分压加跟随、输出串22Ω、反馈并22pF。这套配置成本不高,但能让你少走很多弯路。等板子回来实测完,再根据误差预算表决定哪里可以省、哪里必须加钱。

另外提醒一句,别迷信仿真。我仿真过很多次,交流分析、噪声分析、瞬态分析全都通过,实物一上电还是有几十毫伏的偏移——因为仿真里没有PCB漏电流、没有电阻的热电动势、没有电源的真实纹波。仿真用来验证拓扑和稳定性,精度必须靠实测。板子回来第一件事就是量基准、量中点、量两端,这三个数对了,后面才有得谈。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询