在總線通信中,總線設備中的MCU需要連接一個總線收發器接入到總線網絡中,如果MCU的供電電壓與收發器電壓不匹配時,會出現什么情況?本文將以CAN總線為例從接口電平的角度為你解析電平匹配的重要性。
現大部分數字集成電路采用的是CMOS工藝,其接口的電平大致符合如下定義:
VIL《0.3Vcc;VIH》0.7Vcc;
VOL《0.1Vcc;VOH》0.9Vcc。
以常見的5V、3.3V系統為例,相應的接口參數如表1。
表1 不同供電下的電平要求
注:表中數據僅為計算參考值,器件實際參數需參考相應的數據手冊。
為了確保兩個器件的信號可靠傳輸,必須保證:
當兩個CMOS器件連接在一起時,若供電電壓一致,信號傳輸不存在問題。若兩個器件供電電壓不一致,則會存在電平不匹配問題。
以3.3V器件與5V器件連接為例,會出現以下兩個問題:
如圖 1,3.3V器件輸出VOH最大值3.3V也無法達到5V器件VIH的最小值3.5V,無法保證3.3V器件輸出的高電平被正確識別。由于器件設計有一定余量,在測試時可能仍可正常工作,但存在風險,如出現器件電壓波動時,就會出現問題。
圖1 3.3V器件輸出,5V信號輸入
如圖 2,5V器件輸出高電平信號遠高于3.3V,若3.3V器件輸入引腳不支持5V電平輸入,則工作時會有電流灌入3.3V器件,嚴重會造成器件損壞。
圖2 5V信號輸出,3.3V信號輸入
以CTM1051(A)M系列產品為例,其內部采用的CMOS技術的芯片,引腳電平如圖3,符合CMOS電平標準。在選型時,應該針對不同的MCU選擇相應型號,才能杜絕因電平不匹配產生問題,若MCU為5V供電,應選擇CTM1051M;若MCU為3.3V供電,則選擇CTM1051AM。
圖3 CTM1051(A)M引腳電平
客戶使用于我司一款隔離CAN收發器模塊,已經大批量出貨,但應用中出現個別異常現象。異常產品表現為CAN總線間歇性通訊故障。當產品處于高溫環境時(如65℃),對其進行重復上電,可復現通訊故障現象。
1. 復現異常
將異常品置于65℃的烤箱中,并對以下信號進行測試: MCU供電、TXD、CAN差分、CAN模塊供電。未出現異常時,各點波形如圖4。可以看到,MCU是3.3V供電,電壓穩定在3.2V左右,CAN模塊供電穩定在5.07V左右,CAN差分波形與TXD信號對應無異常。
圖4 正常時波形
對異常板卡進行重復上電,CAN總線出現大量錯誤幀,問題復現。異常時,各點波形如圖5,MCU供電電壓、CAN模塊供電電壓同時出現波動,并出現異常位。異常位出現時,MCU供電下降到3.08V,CAN模塊供電上升至5.19V。
圖5 異常時波形
仔細觀察異常位波形,如圖6,發現TXD變為高電平時,CAN差分電平并未跟隨變化,而當TXD再次出現一個小的噪聲尖峰時,CAN差分電平才變為隱性電平。結合此時MCU供電電壓下降,CAN模塊供電反而上升的情況,初步確定問題是因供電電壓波動,造成TXD高電平無法識別導致。
圖6 異常位波形
2. 問題定位
因懷疑TXD電平無法識別,對CAN模塊的TXD高電平閥值電壓值進行測試。不同輸入電壓下,測試數據如表3。
表3 異常品TXD高電平閥值電壓
從測試數據看出,在不同的環境溫度下,TXD高電平閥值電壓變化均不大。4.75V供電時,閥值約2.91V;5V供電時,閥值約3.06V;5.25V供電時,閥值約3.2V。
如圖5,異常位出現時,CAN模塊的供電為5.19V,此時TXD高電平閥值應該約為3.17V,而MCU的供電僅為3.08V,IO輸出電壓無法達到3.17V,故無法識別高電平。當TXD出現噪聲尖峰時,使TXD短時間高于3.17V,觸發CAN模塊內部切換,總線差分信號發生變化。
此處驗證了上文的猜測,確定故障發生原因為:高溫上電時,MCU、CAN模塊供電電壓出現波動,CAN模塊的TXD引腳無法識別MCU發生的高電平信號,導致錯誤幀持續出現,造成CAN通信中斷。
3. 解決方案
更換為電平匹配的隔離模塊后(由5V隔離模塊更換成3.3V隔離模塊),TXD高電平閥值電壓及CAN總線通訊電平幅值如下圖7所示,均已恢復正常幅值,通訊無異常。
圖7 更換模塊后的TXD高電平閥值以及CAN總線電平