
干过电源、电机驱动、电池包的朋友应该都被NTC温度采样折腾过。看似只是“电阻分压、ADC读电压”但实际做产品初版的时候会发现在不同温度档位读数非线性、NTC自身发热导致温度漂移、分压电阻的功耗在高温环境下又给系统添乱。这些问题追到底大部分都出在分压电阻的选型和功率平衡上。这篇文章就以NTC温度采样电路为主线把分压电阻怎么选、功耗怎么算、以及ATX电源里TL431反馈分压电阻的经验一起串起来讲给正在调板子的朋友做个参考。为什么要把TL431拉进来因为很多温度采样板子和电源是共用一组辅助电源的而辅助电源的反馈分压TL431上下电阻正是最容易看出“分压电阻选择与功率平衡”关系的场景。你会看到同样的“分压”问题在NTC采样和TL431反馈里既有共同的选择逻辑也有完全不同的侧重点。1. NTC温度采样电路的基础结构与设计思路1.1 NTC的基本特性和为什么用分压NTC负温度系数热敏电阻的核心特性是阻值随温度升高而减小而且这种变化不是线性的大致遵守指数关系R_T R_25 * exp( B * (1/T - 1/T_298) )其中R_25是25℃下的标称阻值B值是材料常数T是绝对温度T_298对应近似298K25℃。以最常用的10k NTC、B值3950为例25℃时10kΩ到100℃时大概只剩不到700Ω。这种阻值跨度非常大所以直接用ADC测电阻两端电压时必须有一个固定电阻和它组成分压网络把电阻变化转换成电压变化。分压电路的接法有两种一种是固定电阻上拉或下拉与NTC串联另一种是采用恒流源激励。工业产品里用恒流源当然精度高但成本也高绝大多数单片机内置ADC的方案都是用一颗固定电阻加NTC做分压简单可靠够用。至于接法选择我个人建议看你ADC参考电压的可用范围以及对温度曲线的期望。NTC接地、固定电阻接Vref是常见接法——温度升高NTC阻抗变小分压点电压下降。反过来也可以NTC接Vref、固定电阻接地则温度升高输出电压上升。选择的原则是ADC在低温端和高温端都不该严重饱和并且尽量让输出电压落在ADC量程的20%~80%区间这样能用满有效分辨率。1.2 上拉与下拉接法的取舍很多初学者会忽略一个细节MCU的ADC输入引脚内部可能有一个寄生二极管或者微弱上下拉电阻如果分压网络静态阻抗太高外部干扰和引脚漏电会造成明显的电压误差。因此分压网络总阻抗不宜太高一般推荐等效阻抗在几百欧到几十千欧之间。另一个细节是ADC采样保持电容的充电时间。MCU内部ADC通常带一个采样电容外部源阻抗越高充电时间越长需要的采样时间就越长。比如某些12位ADC要求源阻抗小于10kΩ才能达到数据手册标称的精度。如果你把分压网络做成100kΩ级别那么采样结果会出现明显的系统性偏差特别是切换通道时更加明显。所以在选择NTC分压电阻时第一步不是追求高精度电阻而是先确定分压网络的阻抗级别。对于10k NTC我通常用10kΩ作为固定电阻对于100k NTC固定电阻可以用47k或100k的级别但这时要留意MCU ADC输入漏电流和采样时间必要时增加一个0.1μF的电容并联在NTC两端当然电容会有延迟得和采样率做取舍。2. 分压电阻选型阻值、精度、温漂与误差模型2.1 固定分压电阻阻值怎么定选定10k NTC后固定电阻取多少这个问题很大程度取决于你关心的温度区间。假设Vref 3.3VNTC接地固定电阻R_fix接Vref则输出电压为Vout Vref * R_NTC / (R_fix R_NTC)如果用10k固定电阻25℃时R_NTC10kVout1.65V100℃时R_NTC约700ΩVout3.3*700/(10000700)0.216V。跨度从1.65V到0.216V虽然分辨率在高温端偏低但不容易饱和。如果更关心高温段0~100℃的细节可以把固定电阻改成4.7k或5.6k这样100℃时Vout3.3700/(4700700)0.428V分辨率提高了近一倍。代价是低温端电压更接近Vref比如-20℃时NTC阻值约50kVout3.350000/(470050000)2.98V接近ADC满量程如果继续降温可能导致ADC读满码。所以阻值选择的本质是看你把温度范围放在分压曲线斜率最大的区域。NTC的灵敏度最高在阻抗等于固定电阻的地方即R_NTC R_fix附近。若你关心的工作点都在25℃附近就用10k对10k若你是做高温保护希望电源高温时能灵敏触发固定电阻用小一点让高温端工作点靠近曲线陡峭区域。这里没有“标准答案”关键是先画曲线再看满量程利用率。2.2 固定电阻的精度和温漂如何影响测温误差固定电阻的常见精度等级是1%、0.5%、0.1%温漂从100ppm/℃到10ppm/℃不等。由于分压比例直接决定输出电压固定电阻的任何偏移都会被当成温度误差。假设固定电阻R_fix实际偏差为1%在25℃时NTC也是10k本应输出1.65V实际输出为3.310/(1.011010)1.643V等效到温度上约0.3℃~0.5℃误差。这个误差看起来小但如果同时叠加NTC本身B值差异标称3950±1%高温端误差会扩大。所以一般要求测温误差±2℃时固定电阻至少选0.5%、温漂50ppm以内的薄膜电阻如果有0.1%精度、25ppm的更好。温度系数的影响更隐蔽。如果固定电阻紧挨着一个大功率MOS或功率电阻PCB上温度可能达到80℃。普通厚膜电阻温漂100ppm/℃和25℃相比变化了0.55%就是零点几欧到上百欧的变化再被分压网络耦合温度误差会到1~2℃。特别是在电源板上做NTC采样固定电阻一定要尽量远离发热元件或者选用低温度系数的电阻。我踩过的坑就是采样电阻放在发热元件旁边输出电源后温度读数一路漂最后把电阻挪到板边才解决。2.3 误差计算的快速估算做选型时我们可以用误差公式快速估算。设Vref误差为ε_V固定电阻误差为ε_RNTC本身B值误差为ε_BADC误差为ε_ADC。大多数情况下最终温度误差大致按平方根叠加ΔT_total ≈ sqrt(ΔT_V_ref^2 ΔT_R_fix^2 ΔT_B^2 ΔT_ADC^2)以3.3V LDO供电、Vref精度±1%、固定电阻0.1%、NTC B值±0.5%、12位ADC线性误差±2 LSB为例大约会贡献0.2~0.8℃的综合误差。看起来可以接受但如果你用单片机内部参考电压且没有校准它的初始误差可能高达±2%再叠加固定电阻和B值误差总误差会超过2℃因此需要做两点校准。校准方法很简单用精密电阻箱代替NTC先测一组电压—温度对应表或者用恒温槽把探头放进0℃冰水和100℃沸水中记录ADC读数然后对软件里的分度表做平移和缩放。大多数产品做一次单点校准25℃就够了前提是对误差要求不苛刻。3. 功率平衡NTC自热和分压电阻额定功率3.1 NTC自热功率与最大功耗点NTC是电阻型传感器只要有电流流过它就会产生焦耳热。自热会使NTC自身的温度高于被测环境导致温度读数偏高。NTC有个参数叫耗散系数单位是mW/℃常见规格在0.8~2mW/℃之间意思是1mW功耗会让NTC自身温度比环境升高约0.5~1℃。在分压电路里NTC功耗等于其两端电压的平方除以当前阻值。分压网络中当NTC阻值等于固定电阻时功耗最大。计算很方便P_max Vref^2 / (4 * R_fix)如果Vref3.3VR_fix10kΩP_max 10.89 / 40000 ≈ 0.272mW。对耗散系数1mW/℃的NTC来说最大自热升温约0.3℃这是可以接受的。但如果把Vref提高到12VR_fix用10kΩP_max144/400003.6mW自热升温会到3~4℃这就不能忽视了。所以NTC分压电路的工作电压不要盲目用高电压。如果需要接12V或24V的电路尽量用分压方式先把电压降到5V以内或者让固定电阻用几十千欧限制电流。一般来说将NTC工作功耗控制在0.5mW以内是安全线设计时可以用上面公式反向推算允许的最高Vref。3.2 固定电阻的功率选择别只看阻值很多人会忽略固定电阻自身的功率等级。若使用0402封装额定功率是1/16W62.5mW。在NTC分压电路中固定电阻上的功耗在NTC阻值变化时也会变化最大值同样可以用Vref^2/(4*R_fix)估算。当Vref3.3V、R_fix10k时固定电阻最大功率只有0.27mW0402完全没问题。但你永远不知道电路中会不会出现异常情况比如NTC引脚接错、NTC短路、或受到浪涌电压冲击。NTC一旦短路固定电阻上电压接近Vref功耗变成Vref^2/R_fix。以24V供电、10kΩ为例功耗高达57.6mW接近0603的额定值100mW上限如果Vref变成48V10kΩ电阻功耗230mW就必须用0805或1206。这是许多电源板在做高边NTC采样时炸电阻的原因之一。因此分压电阻的额定功率至少要留2倍以上余量同时要考虑贴片电阻长期高温下寿命变化。若空间允许优先选择0805以上封装不差这点面积。3.3 功率平衡的另一个维度系统总功耗与热布局在电池供电的产品里NTC分压网络是常通的为了随时监测温度功耗虽然在毫瓦级别但常年累月也耗电。这时候可以选择分时供电用MCU的GPIO控制分压网络上端的电源只在采样前打开采样后关断。GPIO输出能力通常只有几毫安串联10k电阻没问题但要注意开机的瞬间GPIO被拉低导致漏电最好加上一个MOS管做开关。热布局方面固定电阻发热虽然极小但NTC探头如果离大功率电阻、电感、MOS管很近测量的不是环境温度而是局部热点。提高采样准确度的方法是把NTC放在被测量目标上并用导热胶固定同时避免贴近散热器表面直接接触高压。电源板上布局时也要注意NTC走线远离开关节点否则高频噪声会耦合进采样线路。4. ATX电源辅助绕组反馈中TL431上下分压电阻的选型经验4.1 TL431反馈分压电阻的基本原理聊完NTC回到很多人在电源调试时碰到的问题ATX电源辅助绕组反馈电路中TL431的上下分压电阻阻值大概是多少先理一下TL431的反馈结构。辅助绕组输出电压经过两个电阻分压中间点接到TL431的REF脚TL431内部有一个2.5V基准当REF电压高于2.5V时TL431阴极导通流过光耦发光二极管电流增加反馈给初级PWM芯片降低占空比从而稳定输出电压。稳态情况下REF引脚的电压近似等于2.5V。因此输出电压Vout由上下分压电阻决定Vout 2.5 * (R_upper R_lower) / R_lower其中R_upper是接输出正端辅助绕组整流滤波后到REF的电阻R_lower是REF到GND的电阻。为了方便我们常把R_lower固定然后算R_upper。4.2 常见阻值范围和原因TL431的REF输入电流典型值是2μA左右数据手册一般给最大4μA。为了保证分压精度足够稳定R_lower上流过的电流至少要比REF输入电流大100倍以上这样REF电流变化才能忽略不计。取0.5~1mA是比较舒服的范围。辅助绕组常见输出有5V、12V、15V。以5V为例若R_lower取2kΩ则REF到GND的电流为2.5/20001.25mA满足要求。R_upper (Vout - 2.5) / 1.25mA (5-2.5)/1.25mA 2kΩ。所以5V输出时上下电阻都是2k左右是个很典型的数值。如果辅助绕组是12V同样R_lower取2kΩ流过电流1.25mAR_upper (12-2.5)/1.25mA 7.6kΩ取标准值7.5k或7.68k1%都可以。如果R_lower取1kΩ则电流2.5mAR_upper 3.8kΩR_lower取2.2k则R_upper约8.36k可以取8.2k实际输出电压会有微小偏差但辅助绕组一般有负载调整要求稳压要求没那么严适当调整即可。4.3 分压电阻功率与稳定性的取舍有人可能会想为了省电把R_lower取100kΩ这样静态电流只有25μA和TL431参考电流处于同一量级输出电压精度会很差而且参考电压会受温度影响漂移。这就是“功率平衡”的核心分压电阻越大功耗越低但偏置电流越小抗干扰和稳定性越差分压电阻越小输出电压越稳但功耗越高电阻本身发热也加剧。在ATX电源的辅助绕组里这个功耗虽然不大但也是待机功耗的一部分。例如12V输出上下电阻总阻值约9.6kΩ静态功耗等于12^2/9600 15mW。两颗电阻分摊功率都不足10mW所以封装根本不是问题0805足够。但如果把阻值降到1kΩ级别功耗会升到144mW虽然还在电阻额定范围内但长期待机发热不可忽略因此不建议把分压电阻做得太小。配合NTC温度采样时还有一种常见做法用TL431的分压网络顺带给MCU的ADC提供一个稳定的参考温度分压或者用比较器NTC对辅助绕组过温保护。这时的上下分压电阻选择更要留意TL431分压网络是硬反馈抖动会造成光耦电流波动NTC分压网络是慢信号两者不要在PCB上交叉走线否则NTC的几毫伏信号会被TL431的开关噪声污染。4.4 快速计算工具和实测调整拿到一块陌生的ATX辅助电源板如果板子上的TL431分压电阻没有丝印标注最稳妥的办法是量TL431 REF脚对地和输出端的电压直接用电表先测静态电压不要盲目换电阻。REF脚正常应接近2.5V。如果REF电压偏差明显说明分压电阻有问题或者TL431本身损坏。如果只是想改输出电压比如把辅助绕组从5V调到12V只需要保持R_lower不变按比例调整R_upper。例如R_lower1kΩ改前5V时R_upper1kΩ改到12V时R_upper (12/5-1)1kΩ? 不对——应该用公式算R_upper R_lower(Vout/2.5 -1)。5V时1k*(2-1)1k12V时1k*(4.8-1)3.8k。这样就能快速得到新阻值。实际操作时还要关注光耦电流限制和TL431阴极最小工作电流1mA如果分压网络改得很高阻可能导致TL431工作点不足反馈环路不稳定。5. 实操中的常见问题与排查技巧实录5.1 NTC采样读数漂移的几个原因遇到NTC温度读数缓慢漂移除了环境温度真的在变最常见的就是NTC自热。判断方法很简单断开NTC电路让NTC冷却后重新上电观察第一次读数是否持续升高。如果上电后读数在几十秒内缓慢上升基本可以确定是自热或固定电阻发热引起的。按前面公式算一下功耗看看是否需要降低采样电压或增大分压电阻。第二个常见原因是采样电容残留电荷。ADC内部采样电容在前一次采样时可能存了不同的电压切换通道后如果采样时间不够长读出的值会偏向上一通道。解决方法是开启ADC前多采一次并丢弃或者把采样时间拉长。对10k级别的源阻抗采样时间至少要在5μs以上某些MCU甚至建议10μs。第三个原因是线路接触电阻和插接件氧化。NTC探头通过连接器接板子时连接器接触电阻如果有几欧姆对低温端影响不大但高温端NTC只有几百欧时几欧姆的接触电阻会造成1%以上的分压偏差。高可靠性场合要用镀金端子并且在软件校准时不只校准常温点还要做两个温度点的校准。5.2 TL431反馈分压电阻相关的现场问题调试ATX辅助电源时我遇到输出电压偏高、怎么调都压不下来的情况。最后发现是TL431的REF引脚到分压电阻之间的走线太长被开关噪声干扰导致TL431误检测。这时在REF脚对地加一个100pF到1nF的小电容可以有效滤除噪声但电容太大会让反馈变慢影响动态响应。另一个典型问题是TL431阴极电压一直偏低光耦无反馈。测分压电阻中点电压远低于2.5V检查了TL431和光耦都没问题后来发现是上分压电阻开路了。所以动手排查时先量分压电阻两端电压再量REF脚电压能迅速定位是电阻网络断线还是芯片损坏。5.3 快速排查速查表现象可能原因处理方向NTC读数整体偏高自热过度降低分压电压或增大固定电阻NTC读数缓慢漂移固定电阻发热或NTC靠近热源更换低温漂电阻、调整布局高温端读数跳变ADC源阻抗过高、采样时间不足降低分压电阻阻值、延长采样时间TL431反馈不稳REF引脚噪声干扰在REF脚增加小电容TL431输出电压偏差大分压电阻阻值精度低、REF电流影响提高电阻精度、降低分压阻值分压电阻过热高电压下电阻功耗过大增大电阻阻值或选择更大封装5.4 设计中的一个细节电阻的额定电压最后提醒一个容易忽略的指标——贴片电阻的额定电压。比如0402封装的额定电压只有50V有些在高压NTC分压应用里两端的电压可能接近100V此时即使功耗很小也会超过电阻额定电压导致电阻击穿或长期可靠性下降。选型时要同时看“额定功率”和“额定电压”尤其是用在整流后母线电压采样和高压NTC保护电路时。我个人的习惯是NTC采样网络的固定电阻工作电压超过30V时不用0402超过50V时改用1206或分多颗串联。温度采样电路功率不大没有必要冒险省封装。5.5 从分压电阻到系统级功率平衡的一点心得分压电阻虽然只是整个电路里不起眼的两颗料但它牵扯到采样精度、自热、系统功耗、噪声抗扰和长期稳定性。NTC采样电路里分压电阻决定了温度误差的下限TL431反馈电路里分压电阻决定了电源稳压的精度。把这两类电路放到同一块板子上时更要留意它们之间的功率平衡和干扰隔离。在ATX电源辅助绕组里TL431上下分压电阻通常落在1kΩ~20kΩ之间通过R_lower2kΩ、R_upper2kΩ5V输出或R_upper7.5kΩ12V输出这种组合就能兼顾精度和功耗。而NTC采样电路根据Vref和NTC阻值固定电阻一般选4.7k~100kΩ同时让NTC静态功耗控制在0.5mW以下。换血时先画分压曲线再算功耗再考虑封装和布局基本不会出大问题。调试时如果遇到温度读数对不上、电源反馈振荡不要先怀疑芯片先拿万用表量一下分压电阻的电压分布往往能快速缩小范围。这些经验都是我在几块电源板上一次次踩坑换来的写出来供参考。后面如果有空我再把NTC查表插值算法和ADC采样滤波的几种实现方式单独整理一篇。