導(dǎo)讀
在電路設(shè)計(jì)中,電平匹配是一個(gè)基本要求,但常常被忽視,可能導(dǎo)致設(shè)備故障和通信異常。本文我們將揭示如何避免因電平不匹配導(dǎo)致的設(shè)備故障,并提供實(shí)用的設(shè)計(jì)建議,確保您的電路設(shè)計(jì)既高效又穩(wěn)定。
電平匹配是進(jìn)行電路設(shè)計(jì)時(shí)的一個(gè)基本要求,但有時(shí)候卻很容易被忽略,特別是沒有仔細(xì)查看外設(shè)或者芯片規(guī)格書的時(shí)候,根據(jù)以往經(jīng)驗(yàn)來設(shè)計(jì),帶來了一些問題。這類問題只要在設(shè)計(jì)的時(shí)候稍加檢查就能被發(fā)現(xiàn),下面的案例1和案例2都是因?yàn)闆]有仔細(xì)看CAN隔離模塊的電氣特性引起的設(shè)計(jì)錯(cuò)誤,其中案例2問題比較隱蔽,還涉及到不同溫度下電氣特性的變化:
MR6450外接5V CAN收發(fā)器,工作異常;
使用CAN收發(fā)器出現(xiàn)偶發(fā)性工作異常。
電平匹配在新處理器系統(tǒng)設(shè)計(jì)時(shí)越來越值得注意,現(xiàn)在很多處理器都分多個(gè)電平域,有的IO是3.3V,有的是1.8V。電平不匹配會(huì)工作不正常,還會(huì)帶來損壞IO的危險(xiǎn),例如產(chǎn)生電流倒灌而損傷IO口。
I2C電平匹配也是一個(gè)經(jīng)常遇到的問題,下面我們將給出兩種不同方案供參考。
? TTL和CMOS電平參數(shù)定義
我們先看下TTL、CMOS邏輯電平參數(shù)定義,參考圖1。
圖1 TTL和CMOS邏輯電平定義
不同邏輯電平的兩個(gè)器件要想實(shí)現(xiàn)信號(hào)可靠傳輸?shù)那疤釛l件:
驅(qū)動(dòng)器輸出的VOH(MIN)必須大于或等于接收器輸入的VIH(MIN)。
驅(qū)動(dòng)器輸出的VOL(MAX)必須小于或等于接收器輸入的VIL(MAX)。
驅(qū)動(dòng)器輸出的電壓不得超過接收器輸入的I/O電壓容差。
案例1:MR6450?的UART腳接到了5V的收發(fā)器
某客戶使用我司MR6450-L核心板通過UART通訊方式外接RS485模塊,無法正常工作,與客戶溝通后了解到客戶使用的RS485模塊邏輯電平為5V。
MR6450核心板處理器為先楫HPM6450,其IO 3.3V邏輯電平定義如圖2所示。
圖2 MR6450?IO?3.3V邏輯電平定義
RS485模塊5V邏輯電平定義如圖3所示。
圖3 RS485模塊5V邏輯電平定義由此可知HPM6450 TX信號(hào)輸出的高電平最大值為VCC-0.1V=3.2V , ?而5V RS485模塊TXD輸入高電平的最小值為5*0.7=3.5V,很明顯不滿足驅(qū)動(dòng)器輸出的VOH必須大于或等于接收器輸入的VIH(MIN)這一必要條件,IO口邏輯電平不匹配,從而導(dǎo)致兩個(gè)模塊間無法通訊。
解決方案:選型3.3V 邏輯電平的RS485模塊,或MCU和模塊間增加電平轉(zhuǎn)換電路。
案例2:CAN隔離模塊電平與處理器不匹配,工作時(shí)偶爾出現(xiàn)間歇性通訊故障
具體表現(xiàn)為客戶使用我司一款隔離CAN收發(fā)器模塊,常溫下偶爾出現(xiàn)個(gè)別產(chǎn)品間歇性通訊故障,將異常產(chǎn)品置于高溫環(huán)境下(65℃)進(jìn)行重復(fù)上電測(cè)試,可復(fù)現(xiàn)異常現(xiàn)象。
常溫下,測(cè)試異常產(chǎn)品的以下信號(hào):MCU供電、TXD、CAN差分、CAN模塊供電,正常時(shí)各點(diǎn)波形如圖4所示。
圖4 正常時(shí)MCU、CAN差分信號(hào)、CAN模塊供電電平波形
進(jìn)一步進(jìn)行高溫實(shí)驗(yàn)。將異常產(chǎn)品置于65℃的烤箱中,并進(jìn)行重復(fù)上電,測(cè)試以下信號(hào):MCU供電、TXD、CAN差分、CAN模塊供電,異常時(shí)各點(diǎn)波形如圖5、圖6所示。
圖5 異常時(shí)MCU、CAN差分信號(hào)、CAN模塊供電電平波形
圖6 異常時(shí)CAN差分信號(hào)、CAN模塊供電電平波形
分析CAN總線出現(xiàn)異常位寬時(shí)的波形。當(dāng)TXD信號(hào)由低變高時(shí)CAN總線電平仍然維持顯性電平,在偶然間疊加線路板上noise后引起TXD電平略微變大。此時(shí)CAN總線電平概率性變?yōu)殡[性電平。
高溫環(huán)境下,因半導(dǎo)體材料的特性有可能會(huì)導(dǎo)致整個(gè)系統(tǒng)的功耗有所增加。此案例呈現(xiàn)的現(xiàn)象為MCU供電電壓下降,CAN模塊供電電壓上升,進(jìn)一步影響到兩模塊的邏輯電平,從而使異常現(xiàn)象變得更為明顯。實(shí)測(cè)CAN模塊不同電壓和溫度環(huán)境下,TXD高電平閾值的變化如圖7所示。
圖7 CAN模塊不同電壓和溫度環(huán)境下,TXD高電平閾值的變化
問題根因:高溫65°C環(huán)境下,CAN模塊供電5.19V,對(duì)應(yīng)的TXD高電平閾值約為3.17V,MCU供電3.08V,對(duì)應(yīng)的IO輸出電壓最高約為3V,MCU輸出的VOH低于CAN模塊的輸入VIH,兩模塊間邏輯電平不匹配,導(dǎo)致通訊異常,因IO口電平邏輯的容錯(cuò)余量比較小,常溫下也許能工作,但在高溫環(huán)境等比較嚴(yán)格的環(huán)境下,兩模塊間的邏輯電平很容易出現(xiàn)不匹配問題。
解決方案:將5V隔離模塊更換成3.3V隔離模塊。
? 如果I2C電平不匹配該怎么處理?
1. 使用專用的I2C總線電平轉(zhuǎn)換芯片PCA9306
PCA9306是一款支持I2C總線和SMBus的雙向電平轉(zhuǎn)換器,支持從1.0V~3.6V(Vref(1))到1.8V~5.5V(Vbias(ref)(2))的電平轉(zhuǎn)換,PCA9306可工作在兩種工作頻率下:400KHz和100KHz。最大頻率取決于RC時(shí)間常數(shù),一般支持>2MHz。
PCA9306標(biāo)準(zhǔn)使用電路如圖8所示。
圖8 PCA9306參考電路
設(shè)計(jì)時(shí)注意以下幾點(diǎn):
兩邊的電壓VREF1和VREF2并不是取任意值且VREF1為低壓位端VREF2為高壓位端;
可以使用EN鍵來控制內(nèi)部開關(guān)的導(dǎo)通和關(guān)斷;
EN和VREF2管腳連接在一起;
上拉電阻的取值,取決于SW在導(dǎo)通時(shí)產(chǎn)生的壓降,詳見手冊(cè)推薦值。
2. 使用MOS管搭建電平轉(zhuǎn)換電路
圖9所示電路是一個(gè)使用MOS管進(jìn)行電平轉(zhuǎn)換的示例。
圖9 MOS實(shí)現(xiàn)電平轉(zhuǎn)換
設(shè)計(jì)時(shí)注意以下幾點(diǎn):
低壓位VDD_3V3連接MOS管源極,高壓位VDD_5V連接MOS管漏極;
如果換用其它電壓閾之間的轉(zhuǎn)換,如3.3V、2.5V、1.8V等,需要注意MOS管Vgs開啟導(dǎo)通電壓;
僅適用于低速率場(chǎng)合(100/400Khz)。
??15路串口
??2路千兆
??4路CANFD
參考價(jià)格:49元起