戰(zhàn):遲滯、閾值檢測及電路設(shè)計(jì))
1. 比較器為什么值得單獨(dú)拿出來講你手里有一顆模擬信號想判斷它是否超過某個(gè)閾值或者想把不規(guī)整的波形整形成單片機(jī)認(rèn)識的方波甚至想用純硬件做一個(gè)越限報(bào)警器。這些需求背后都有一個(gè)共同的元器件電壓比較器。我這些年做過不少信號調(diào)理和嵌入式底層的項(xiàng)目最開始總習(xí)慣用運(yùn)放湊合著做比較后來踩了幾次坑才明白比較器Comparator不是一個(gè)“開環(huán)用法下的運(yùn)放”這么簡單它是一類專門為“快速判斷大小”而優(yōu)化過的器件在閾值檢測、電平轉(zhuǎn)換、波形整形、窗口報(bào)警、振蕩電路這些場景里幾乎是不可替代的。這篇文章面向的是電子工程師、嵌入式開發(fā)者以及正在做硬件課設(shè)的同學(xué)們。如果你遇到過“運(yùn)放做比較器反應(yīng)太慢”“比較器輸出一直抖”“開漏輸出怎么接上拉”這類問題那這篇文章就是為你準(zhǔn)備的。文章會(huì)從原理開始講給出一套選型思路、經(jīng)典電路的計(jì)算方法和調(diào)試中的排坑實(shí)錄全部都是可以直接抄作業(yè)的內(nèi)容??赐曛竽銘?yīng)該能獨(dú)立設(shè)計(jì)一個(gè)穩(wěn)定的閾值檢測電路并且知道用什么參數(shù)去挑選合適的比較器芯片。2. 核心原理與設(shè)計(jì)思路對比2.1 比較器和運(yùn)放到底差在哪模擬電路教科書里有一句話運(yùn)放工作在開環(huán)狀態(tài)時(shí)就是比較器。這句話理論上成立因?yàn)檫\(yùn)放的開環(huán)增益極高正負(fù)輸入端只要有微小壓差輸出就會(huì)往電源軌方向跑。但工程上直接這么用往往不理想原因在于運(yùn)放的設(shè)計(jì)目標(biāo)不是“開環(huán)快速翻轉(zhuǎn)”而是“閉環(huán)穩(wěn)定放大”。為了讓運(yùn)放在負(fù)反饋下穩(wěn)定工作內(nèi)部做了頻率補(bǔ)償把帶寬壓得很低。常見的通用運(yùn)放LM358單位增益帶寬只有1MHz左右壓擺率只有0.5V/us左右意味著輸入信號快速穿過閾值時(shí)輸出要花很長時(shí)間才能從低電平翻到高電平這在信號頻率稍高的場合直接導(dǎo)致波形畸變。比較器則反過來了它從設(shè)計(jì)第一天起就為開環(huán)工作優(yōu)化。比較器內(nèi)部沒有頻率補(bǔ)償電容各級放大器的工作點(diǎn)專門為“快速進(jìn)入飽和區(qū)”設(shè)計(jì)所以傳輸延遲可以做到幾十納秒甚至幾個(gè)納秒級別?,F(xiàn)代比較器如TLV3501傳輸延遲只有4.5ns而普通運(yùn)放做開環(huán)比較輸出翻轉(zhuǎn)可能要花幾微秒。兩者的差距在高速信號檢測、過零檢測這類場景里是天壤之別。另一個(gè)關(guān)鍵差異在輸出級。通用運(yùn)放輸出級是推挽結(jié)構(gòu)滿擺幅輸出可以直接驅(qū)動(dòng)后級。而大量比較器芯片尤其是老字號的LM393/LM311輸出級是集電極開路或者漏極開路結(jié)構(gòu)必須外部接上拉電阻才能輸出高電平。這種設(shè)計(jì)的好處是輸出電平可以靈活匹配后級電路你可以用3.3V上拉讓比較器輸出3.3V方波給MCU也可以把多個(gè)比較器輸出并在一起構(gòu)成線與邏輯。缺點(diǎn)就是新手容易忽略上拉電阻導(dǎo)致輸出始終被拉低或者高電平電壓不對。還有一個(gè)經(jīng)常被忽略的點(diǎn)運(yùn)放的輸入級通常做了相位補(bǔ)償輸入電壓超過共模范圍時(shí)輸出狀態(tài)不確定比較器則明確給出了“共模輸入范圍”以及“輸入超過電源軌時(shí)的行為描述”工程師用起來更有章可循。更專業(yè)的比較器還內(nèi)置了遲滯或者可編程遲滯功能這就引出了下一個(gè)話題。2.2 遲滯為什么是剛需而不是可選項(xiàng)所謂遲滯Hysteresis是指比較器的翻轉(zhuǎn)閾值在輸出狀態(tài)變化時(shí)發(fā)生偏移。簡單說輸入電壓從低往高走時(shí)翻轉(zhuǎn)閾值為VTH從高往低走時(shí)翻轉(zhuǎn)閾值為VTH-兩個(gè)閾值之間的差叫遲滯寬度。為什么要故意做這種“不合理”的偏移因?yàn)檎鎸?shí)世界的信號不可能是干凈的直流電平必然疊加噪聲。如果閾值是單一值當(dāng)輸入信號在閾值附近抖動(dòng)時(shí)比較器輸出會(huì)跟著反復(fù)翻轉(zhuǎn)產(chǎn)生一串高頻脈沖這叫做“振蕩”或“顫動(dòng)”。我實(shí)測過一個(gè)沒有遲滯的比較器電路正弦波經(jīng)過衰減后疊加了大約50mV的工頻紋波閾值恰好設(shè)置在波形的中點(diǎn)附近結(jié)果示波器上看到的輸出不是干凈的方波而是一簇密集的毛刺。加了遲滯之后只要遲滯寬度大于噪聲峰峰值輸出就是一次干凈的翻轉(zhuǎn)。設(shè)計(jì)中的核心原則是遲滯寬度至少要大于噪聲幅度的兩倍但又不能太大否則閾值誤差會(huì)超過系統(tǒng)允許范圍。很多現(xiàn)代比較器如TLV7022、MAX964內(nèi)部集成了幾毫伏到十幾毫伏的固定遲滯對大多數(shù)應(yīng)用已經(jīng)夠用。老型號比如LM393沒有內(nèi)置遲滯需要通過外部正反饋電阻網(wǎng)絡(luò)實(shí)現(xiàn)。外部加遲滯的方法也不復(fù)雜從輸出端接一個(gè)正反饋電阻到同相輸入端輸出為高時(shí)同相端電壓被抬高反之被壓低形成兩個(gè)閾值。計(jì)算方法在下文電路設(shè)計(jì)部分詳細(xì)展開。3. 核心參數(shù)拆解與選型方法3.1 必須看懂的關(guān)鍵性能參數(shù)選比較器不能只看“響應(yīng)快不快”數(shù)據(jù)手冊里有幾個(gè)參數(shù)直接影響電路能否可靠工作逐個(gè)講清楚。第一個(gè)是傳輸延遲Propagation Delay定義為輸入信號跨過閾值開始到輸出翻轉(zhuǎn)至50%電平為止的時(shí)間。這個(gè)參數(shù)決定了你能處理多快的信號。如果做個(gè)簡單的經(jīng)驗(yàn)換算要可靠檢測一個(gè)方波信號比較器傳輸延遲最好小于信號周期的十分之一。比如檢測100kHz方波周期10us延遲最好小于1us普通的LM393延遲約1.3us就有點(diǎn)勉強(qiáng)檢測1MHz信號就得選延遲在100ns級別的芯片比如TLV3201延遲約40ns。第二個(gè)是輸入失調(diào)電壓Input Offset Voltage。它表示比較器實(shí)際翻轉(zhuǎn)電壓與理想閾值的偏差。LM393的失調(diào)電壓典型值在2mV左右高性能型可以做到0.5mV以下。這個(gè)參數(shù)直接決定了閾值檢測的絕對精度。如果你要做高精度窗口比較器閾值誤差預(yù)算要同時(shí)考慮失調(diào)電壓和遲滯寬度不能只盯著電阻精度。低失調(diào)比較器比如LMV331失調(diào)只有1mV價(jià)格也不貴適合對精度敏感的應(yīng)用。第三個(gè)是輸入偏置電流Input Bias Current。比較器輸入端需要吸收或流出微小電流形成偏置雙極性輸入的LM393典型偏置電流約250nACMOS輸入的TS881只有1pA左右。對于高阻抗源比如pH傳感器、光電二極管跨阻輸出偏置電流在外部電阻上產(chǎn)生的壓降會(huì)造成很大的閾值誤差。舉個(gè)例子源阻抗100kΩ配LM393250nA偏置電流產(chǎn)生25mV誤差這對5mV的閾值來說完全是災(zāi)難。這時(shí)候要么選CMOS輸入比較器要么在輸入端加緩沖放大器。第四個(gè)是輸出結(jié)構(gòu)。開漏/開集輸出靈活但要外接上拉推挽輸出可以直接驅(qū)動(dòng)后級但高電平被電源電壓鉗位。還有三態(tài)輸出比較器適合總線應(yīng)用。選型時(shí)先確認(rèn)后級需要什么電平再定輸出類型。比如接MCU用開漏加3.3V上拉能實(shí)現(xiàn)電平匹配驅(qū)動(dòng)繼電器或LED不妨直接用推挽輸出的比較器加限流電阻省掉一級驅(qū)動(dòng)電路。第五個(gè)是靜態(tài)電流Supply Current。電池供電的便攜設(shè)備里這個(gè)參數(shù)比響應(yīng)速度更關(guān)鍵。比較器靜態(tài)電流從微安到毫安不等。當(dāng)系統(tǒng)長期監(jiān)聽傳感器信號、只在超限時(shí)喚醒MCU的場景下選靜態(tài)電流低于1uA的納米功耗比較器如TLV7011系列非常合適。相比之下LM393的靜態(tài)電流約0.4mA在電池應(yīng)用里就偏大了。3.2 按場景選型而不是按芯片選型我接觸過的項(xiàng)目里比較器選型錯(cuò)誤大多不是性能不夠而是沒有按場景需求抓主要矛盾。下面把典型場景和對應(yīng)的選型思路整理一下供參考。閾值檢測、按鍵消抖這類低速場景不需要追求極致延遲重點(diǎn)看閾值精度和功耗。LM393、LMV331這類經(jīng)典單/雙比較器價(jià)格低、貨源足、噪聲免疫好適合大部分緩慢信號判斷。輸入信號源阻抗高時(shí)換CMOS輸入的比較器比如TLV3691偏置電流以pA計(jì)。高速波形整形、時(shí)鐘恢復(fù)、過零檢測場景重點(diǎn)看傳輸延遲和壓擺率。TLV3501延遲4.5ns適合幾十MHz信號整形ADC驅(qū)動(dòng)或者高頻PWM檢測可以用LT1719這類高速比較器但要注意電源去耦和PCB布線高速電路對布局要求很高。電池供電的閾值監(jiān)控、喚醒電路重點(diǎn)是靜態(tài)電流和供電電壓范圍。比如體溫貼里的熱敏電阻閾值檢測選納米功耗比較器加上皮安級輸入偏置整機(jī)待機(jī)電流能做到微安級別。LTC1540這類納米功耗比較器自己帶基準(zhǔn)源一個(gè)芯片解決閾值比較和參考電壓兩個(gè)問題。如果是工業(yè)現(xiàn)場信號調(diào)理共模電壓范圍和輸入保護(hù)更重要。比較器的兩個(gè)輸入端如果可能接觸到高壓干擾必須選帶輸入保護(hù)或者外界鉗位電路。LM393雖然有輸入保護(hù)二極管但也不能直接扛高壓常用做法是輸入端串電阻限流。工業(yè)場景下器件還要看工作溫度范圍-40℃到125℃的型號比商業(yè)級貴不了多少但可靠性高很多。4. 經(jīng)典應(yīng)用電路設(shè)計(jì)與實(shí)操計(jì)算4.1 過零檢測電路從正弦波到方波的最小系統(tǒng)過零檢測大概是比較器最經(jīng)典的應(yīng)用了。電網(wǎng)電壓過零信號、電機(jī)位置檢測、音頻信號整形都會(huì)用到。最簡單的過零檢測電路同相輸入接地反相輸入接正弦信號輸出推挽型的比較器直接輸出方波。不過這個(gè)電路有個(gè)問題如果信號上升沿非常緩慢或者噪聲幅度較大輸出會(huì)振蕩。所以實(shí)際工程里我一般會(huì)加上微小的正反饋電阻形成很小的遲滯。以給STM32提供電網(wǎng)過零信號為例電網(wǎng)信號經(jīng)過電壓互感器和運(yùn)放調(diào)理后得到一幅值約±3V的正弦波。選推挽輸出比較器TLV3201供電5V輸出3.3V邏輯電平需要通過電阻分壓或者選用供電3.3V的比較器。電路參數(shù)同相輸入端通過100kΩ電阻接地作為基準(zhǔn)同時(shí)接一個(gè)1MΩ反饋電阻到輸出端形成約60mV的遲滯寬度計(jì)算見下節(jié)。反相輸入端接正弦信號輸入端串1kΩ電阻限流。實(shí)測在50Hz信號下輸出波形干凈利落上升沿?zé)o任何毛刺。這里有個(gè)容易被忽略的小細(xì)節(jié)過零檢測電路里的“地”不是絕對的0V而是比較器負(fù)電源軌。如果系統(tǒng)是單電源供電比較器負(fù)電源接系統(tǒng)地那么輸入信號必須偏置到正電壓范圍否則負(fù)半周信號無法被檢測。此時(shí)可以用分壓電阻生成一個(gè)VCC/2的虛擬地作為比較基準(zhǔn)輸入信號經(jīng)過交流耦合后加載到比較器輸入端實(shí)現(xiàn)“相對于VCC/2的過零檢測”。4.2 施密特觸發(fā)器電路用正反饋算出精確遲滯如果要做一個(gè)可調(diào)閾值的施密特觸發(fā)器外置正反饋電阻網(wǎng)絡(luò)的電路結(jié)構(gòu)和計(jì)算方式是硬件工程師必會(huì)的基本功。典型電路反相輸入接輸入信號Vin同相輸入接基準(zhǔn)電壓VREF反饋電阻RF從輸出接到同相輸入端同相輸入端到地接電阻R1或者同相輸入端到VREF接電阻R1結(jié)構(gòu)略有不同。我習(xí)慣用“同相端到VREF接R1、同相端到地接R2”的分壓結(jié)構(gòu)計(jì)算起來比較清晰。當(dāng)輸出為高電平VOH時(shí)同相端電壓等于VREF和VOH在R1、R2上的分壓結(jié)果當(dāng)輸出為低電平時(shí)同相端電壓等于VREF和VOL在R1、R2上的分壓結(jié)果。兩個(gè)不同的同相端電壓對應(yīng)兩個(gè)不同的翻轉(zhuǎn)閾值。以3.3V供電、開漏輸出配上拉到3.3V為例VOH3.3VVOL0V遲滯寬度ΔV由反饋系數(shù)βR2/(R1R2)決定。閾值電壓近似為VREF當(dāng)分壓電阻大時(shí)加上β乘以輸出擺幅的一半。更嚴(yán)謹(jǐn)?shù)淖龇ㄊ窍却_定閾值上限和下限再反推電阻。假設(shè)設(shè)計(jì)目標(biāo)輸入電壓超過2.5V時(shí)輸出翻轉(zhuǎn)為高低于2.2V時(shí)輸出翻轉(zhuǎn)為低VREF2.35V。則上限閾值VTH應(yīng)該滿足VTH VREF β×(VOH - VREF)下限閾值VTH-滿足VTH- VREF - β×(VREF - VOL)。VOH- VREF 3.3-2.350.95VVREF-VOL 2.35V兩者不對稱所以直接用線性疊加來算。聯(lián)立得到β約0.158。取R1100kΩR218kΩβ≈0.152接近目標(biāo)。實(shí)測閾值上限約2.49V下限約2.24V跟設(shè)計(jì)值吻合。注意反饋電阻不能太小否則靜態(tài)功耗高也不能太大否則比較器輸出驅(qū)動(dòng)能力不夠。經(jīng)驗(yàn)上反饋支路電流控制在幾十微安級別即可。如果后級MCU輸入引腳帶弱上拉也會(huì)影響閾值計(jì)算需要仔細(xì)核對。4.3 窗口比較器一對閾值檢測一個(gè)區(qū)間窗口比較器用來判斷輸入電壓是否在一個(gè)區(qū)間內(nèi)典型應(yīng)用包括電池電量指示、溫度越限報(bào)警、水位檢測。做法是兩個(gè)比較器并聯(lián)一個(gè)比較器檢測上限VTH輸入接到反相端輸出翻轉(zhuǎn)條件為輸入超過VTH另一個(gè)檢測下限VTH-輸入接到同相端輸出翻轉(zhuǎn)條件為輸入低于VTH-。兩個(gè)輸出經(jīng)過邏輯組合得到“在區(qū)間內(nèi)”的邏輯電平。如果直接用兩個(gè)獨(dú)立比較器加邏輯門電路會(huì)比較大。更優(yōu)雅的做法是用LM393這類開集輸出比較器做線與兩個(gè)比較器輸出接到同一個(gè)節(jié)點(diǎn)通過一個(gè)上拉電阻接VCC。假設(shè)兩個(gè)比較器都為低電平時(shí)線與節(jié)點(diǎn)為低如果其中一個(gè)不滿足翻轉(zhuǎn)條件則對應(yīng)的輸出管截止節(jié)點(diǎn)由上拉電阻拉高。但這里需要仔細(xì)設(shè)計(jì)邏輯極性不然會(huì)得到相反的結(jié)果。我做過一個(gè)電池電壓監(jiān)控電路單節(jié)鋰電池工作電壓范圍3.0V到4.2V低于3.0V報(bào)警高于4.2V也要報(bào)警。用兩個(gè)LM393第一個(gè)檢測上限VREF12.1V通過分壓電阻把4.2V映射到2.1V第二個(gè)檢測下限VREF21.5V對應(yīng)3.0V。輸入電壓先經(jīng)過電阻分壓分壓系數(shù)0.5使得電池電壓在窗口范圍內(nèi)時(shí)比較器輸入端電壓處于1.5V到2.1V之間。兩個(gè)輸出通過二極管或門組合再用一個(gè)三極管驅(qū)動(dòng)LED報(bào)警。這個(gè)電路靜態(tài)功耗很低實(shí)測工作穩(wěn)定沒有出現(xiàn)兩個(gè)比較器翻轉(zhuǎn)不同步導(dǎo)致的報(bào)警抖動(dòng)。窗口比較器的精度瓶頸往往不在比較器本身而在分壓電阻網(wǎng)絡(luò)和基準(zhǔn)源。普通電阻溫漂50ppm/℃環(huán)境溫度變化50℃時(shí)誤差約0.25%對很多應(yīng)用可以接受。如果要求更高用0.1%精度的電阻加TL431基準(zhǔn)源閾值漂移能控制得很好。4.4 弛張振蕩器與電壓控制振蕩器比較器的另一個(gè)好玩應(yīng)用是RC弛張振蕩器。用比較器加正反饋配合電容充放電就能產(chǎn)生方波信號不需要專門的555定時(shí)器。原理是比較器輸出高電平時(shí)通過電阻向電容充電當(dāng)電容電壓超過同相端閾值由反饋網(wǎng)絡(luò)設(shè)定時(shí)輸出翻轉(zhuǎn)為低電容開始放電當(dāng)電容電壓低于低閾值時(shí)輸出再次翻轉(zhuǎn)如此循環(huán)。這個(gè)電路的優(yōu)勢在于振蕩頻率和占空比可以獨(dú)立調(diào)節(jié)而且可以通過改變比較器供電電壓或參考電壓實(shí)現(xiàn)電壓控制振蕩VCO。我常用它來做簡易的音頻提示音發(fā)生器LM393輸出接一個(gè)小壓電蜂鳴器RC參數(shù)設(shè)定約1kHz振蕩頻率正反饋電阻設(shè)定遲滯寬度實(shí)測波形是標(biāo)準(zhǔn)的方波聲音響亮無雜音。頻率計(jì)算公式f 1 / (2 × R × C × ln(1 2×RF/R1))具體推導(dǎo)過程略實(shí)際調(diào)試時(shí)用示波器測量波形微調(diào)一下RC值即可。有一點(diǎn)需要提醒RC弛張振蕩器啟動(dòng)時(shí)如果電容初始電壓恰好落在兩個(gè)閾值之間比較器可能保持一個(gè)狀態(tài)不啟動(dòng)。解決方法是上電瞬間給電容一個(gè)小的初始偏置或者用一個(gè)大的啟動(dòng)電阻把同相端拉到確定狀態(tài)。更簡單粗暴的辦法是選擇帶內(nèi)置遲滯的比較器起振可靠性更高。5. 常見問題與調(diào)試排查實(shí)錄5.1 輸出振蕩問題遲滯不夠和地回路干擾比較器電路里最常見的問題就是輸出振蕩?,F(xiàn)象是輸出不是干凈的高低電平而是高頻抖動(dòng)后級MCU讀取到的是亂碼或者不斷觸發(fā)中斷。原因通常有兩類第一類是輸入信號在閾值附近有噪聲疊加后多次穿越閾值第二類是比較器自身的電源耦合和地回路噪聲引起誤翻轉(zhuǎn)。針對第一類最直接的解決方法是增加遲滯寬度確保遲滯寬度大于噪聲峰峰值。如果電路里沒法加正反饋比如比較器被用在反饋環(huán)路里可以試試在輸入端加RC低通濾波把高頻噪聲先濾掉。RC時(shí)間常數(shù)要選好太小抑制不了噪聲太大會(huì)讓信號延遲變大。經(jīng)驗(yàn)值截止頻率設(shè)為信號頻率的3到5倍比如檢測10kHz信號低通截止頻率設(shè)為30kHz到50kHz。針對第二類本質(zhì)是PCB布局問題。比較器的翻轉(zhuǎn)沿非常陡峭翻轉(zhuǎn)瞬間電源電流會(huì)突變在電源走線上產(chǎn)生壓降如果電源去耦不良這個(gè)壓降會(huì)通過參考分壓網(wǎng)絡(luò)耦合到輸入端。我排查過不少“閾值漂移”的問題最后都是去耦電容位置不對導(dǎo)致的。比較器的電源引腳旁邊必須放0.1uF陶瓷電容而且要盡可能靠近引腳走線先經(jīng)過電容再到芯片。如果系統(tǒng)里有繼電器、電機(jī)等大電流負(fù)載比較器電源要單獨(dú)用磁珠或者LC濾波器隔離開。5.2 浮空輸入和未用引腳的正確處理比較器輸入端懸空時(shí)輸入阻抗極高電場感應(yīng)、漏電流都可以改變輸入端電位導(dǎo)致輸出狀態(tài)隨機(jī)跳動(dòng)。這在量產(chǎn)時(shí)是隱蔽的可靠性問題初學(xué)者經(jīng)常遇到。處理原則任何輸入引腳不能懸空。如果某一路比較器沒用最穩(wěn)妥的做法是把同相端和反相端都接到地或者電源軌輸出狀態(tài)固定不參與邏輯。如果輸入端需要接高阻抗傳感器PCB走線要短并且用地線包圍保護(hù)減少耦合噪聲。另外同相端和反相端之間的走線間距盡量拉開防止輸出翻轉(zhuǎn)時(shí)的電荷注入通過寄生電容耦合到輸入端。我還遇到過一種奇怪現(xiàn)象比較器輸出能正常翻轉(zhuǎn)但翻轉(zhuǎn)電平存在不對稱誤差。排查發(fā)現(xiàn)是同相輸入端的參考電阻用了高阻值1MΩ而比較器輸入偏置電流在這個(gè)電阻上產(chǎn)生了明顯的壓降等效于改變了參考電壓。解決辦法是減小參考分壓電阻網(wǎng)絡(luò)整體阻值或者選用低偏置電流的CMOS比較器。5.3 上拉電阻取值快了費(fèi)電慢了誤事開漏/開集輸出的比較器必須接上拉電阻才能輸出高電平而上拉電阻的取值需要平衡速度與功耗。上拉電阻越小輸出高電平時(shí)灌入上拉電阻的電流越大輸出上升沿越快但靜態(tài)功耗也越高。上拉電阻越大靜態(tài)功耗越低但輸出上升沿變慢且容易受寄生電容影響。以LM393配3.3V上拉為例輸出端到地的寄生電容約5pF到10pF如果上拉電阻100kΩ上升時(shí)間常數(shù)約0.5ms到1ms后級MCU如果讀取速度很快可能在跳變沿中間采到不確定電平。建議在低速應(yīng)用幾百Hz以下用100kΩ到470kΩ中速應(yīng)用幾kHz到幾十kHz用10kΩ到47kΩ高速應(yīng)用幾百kHz以上用1kΩ到4.7kΩ。我習(xí)慣先從4.7kΩ起步功耗約0.7mA絕大多數(shù)場合夠用再根據(jù)實(shí)際波形微調(diào)。上拉電阻連接到哪個(gè)電源也是門學(xué)問。如果比較器供電5VMCU供電3.3V直接把上拉電阻接到5V會(huì)燒壞MCU引腳。正確做法是上拉電阻接到3.3V電源這樣高電平輸出為3.3V低電平0V完美匹配MCU邏輯。這正是開漏輸出的優(yōu)勢之一——輸出電平可以和后級獨(dú)立匹配不依賴比較器自身的電源電壓。5.4 電源電壓和共模輸入范圍的雙重約束比較器輸入信號的允許范圍是有限的超出共模輸入范圍會(huì)導(dǎo)致輸出狀態(tài)不可預(yù)期嚴(yán)重時(shí)甚至損壞芯片。LM393的共模輸入范圍是0到(VCC-1.5V)就是說5V供電時(shí)輸入端最高只能到3.5V。如果你拿它檢測12V系統(tǒng)的信號直接接入必然出問題。解決思路先用電阻分壓把信號降到比較器可接受的范圍或者選用高壓比較器芯片。單電源供電時(shí)還有個(gè)常見坑輸入信號相對系統(tǒng)地是負(fù)電壓時(shí)比較器無法處理。此時(shí)需要在輸入端加偏置把信號抬高到正電壓范圍。我經(jīng)常用兩只等值電阻從VCC到地分壓產(chǎn)生VCC/2的偏置電壓輸入信號通過電容交流耦合疊加到這個(gè)偏置上。偏置電阻取值不能太大否則比較器輸入偏置電流會(huì)在其上產(chǎn)生誤差也不能太小否則白白增加功耗。10kΩ到100kΩ之間通常是合理區(qū)間具體要和信號源阻抗匹配。供電電壓的紋波也會(huì)影響比較器閾值。比較器的分壓網(wǎng)絡(luò)參考電源比如VCC/2如果VCC上疊加了100mV紋波意味著閾值也有100mV抖動(dòng)。對高精度應(yīng)用最好用基準(zhǔn)源或穩(wěn)壓二極管產(chǎn)生參考電壓而不是從電源分壓。TL431就能很好地勝任這個(gè)角色溫度穩(wěn)定性好價(jià)格便宜。5.5 從波形上快速定位問題的三個(gè)技巧最后分享幾個(gè)用示波器定位比較器問題的方法。第一個(gè)技巧同時(shí)觀察輸入信號和輸出信號垂直方向?qū)R重點(diǎn)看輸出跳變點(diǎn)落在輸入波形的什么位置。如果跳變點(diǎn)明顯偏離理論閾值優(yōu)先懷疑失調(diào)電壓、參考分壓誤差或者偏置電流影響源阻抗。第二個(gè)技巧檢查輸出波形的上升沿和下降沿。如果上升沿比較緩、下降沿很陡說明上拉電阻太大或者輸出電容太大。如果兩個(gè)沿都緩而且波形圓頭圓腦基本是示波器探頭補(bǔ)償不對或者測試點(diǎn)選擇了高阻抗節(jié)點(diǎn)探頭負(fù)載拖慢了信號。第三個(gè)技巧用直流掃描代替動(dòng)態(tài)信號測試。把輸入接到可調(diào)直流源緩慢調(diào)節(jié)電壓同時(shí)用萬用表監(jiān)視輸出狀態(tài)。這種方法可以精確測量比較器翻轉(zhuǎn)閾值比盯著示波器猜要靠譜得多。測量時(shí)要記錄上升翻轉(zhuǎn)點(diǎn)和下降翻轉(zhuǎn)點(diǎn)兩個(gè)值之差就是實(shí)際遲滯寬度。測出來的值和理論計(jì)算的偏差如果超過20%回頭檢查電阻的溫漂、VREF的精度以及比較器輸入偏置電流的貢獻(xiàn)。6. 實(shí)操心得與擴(kuò)展思路做硬件這幾年我對比較器最深的感受是這器件看似簡單“判斷大小”四個(gè)字背后牽扯出的信號完整性、閾值精度、功耗權(quán)衡問題一點(diǎn)不少。每次項(xiàng)目里用到比較器我都會(huì)留出專門的時(shí)間做閾值計(jì)算和波形驗(yàn)證尤其是遲滯設(shè)計(jì)寧愿多加一個(gè)電阻也不要省事不加正反饋——省事一時(shí)爽調(diào)試點(diǎn)燈到天亮。如果讀者想繼續(xù)深入我建議動(dòng)手搭一個(gè)多功能測試板一片LM393加一片TLV3501配合可調(diào)電阻網(wǎng)絡(luò)分別測過零檢測、遲滯閾值、窗口報(bào)警和弛張振蕩四種電路。用信號發(fā)生器輸入正弦波、方波和帶噪聲信號用示波器記錄各種參數(shù)下的輸出波形。這么一輪下來對比較器的參數(shù)會(huì)建立起非常直觀的認(rèn)知遠(yuǎn)比背數(shù)據(jù)手冊有效。后續(xù)可以往兩個(gè)方向擴(kuò)展一是把比較器與MCU結(jié)合的智能閾值系統(tǒng)比如用DAC輸出可調(diào)參考電壓配合比較器實(shí)現(xiàn)軟件可調(diào)的閾值判斷二是用高速比較器做簡單的數(shù)據(jù)通信波形整形比如紅外遙控信號的載波解調(diào)。跟著這些方向做幾個(gè)小項(xiàng)目你會(huì)真正體會(huì)到比較器在整個(gè)信號鏈里承上啟下的價(jià)值。