最近在設計中碰到一個簡單,但是稍不注意就出錯的問題,在此分享一下。
在電路開發(fā)過程中,我們經常遇到兩個系統電平不一致的情況,比如IIC通信。使用MOS管搭建雙向電平轉換電路,是比較常見的做法,電路如圖1中虛線框所示,MOS管的部分參數如圖2所示。
圖1
圖2
電路原理很簡單,分兩種情況:
1. 從A到B
A為高電平時,MOS管關斷,B端通過上拉,輸出高電平;
A為低電平時,MOS管內的體二極管導通,使MOS管的S極被拉低,從而使Vgs=3.3V>Vgs(th)=1.6V,MOS管導通,B端被拉低,輸出低電平;
A為高阻態(tài)時,MOS管關斷,B端通過上拉,輸出高電平。
2. 從B到A
B為高電平時,MOS管關斷,A端通過上拉,輸出高電平;
B為低電平時,Vgs=3.3V>Vgs(th)=1.6V,MOS管導通,A端被拉低,輸出低電平;
B為高阻態(tài)時,MOS管關斷,A端通過上拉,輸出高電平。
一直以來使用這個電路沒有出現過問題,所以這次也是不假思索的照搬過來,但結果是上電后,模塊B無法正常啟動工作。
出現該問題的原因也很簡單,就是模塊B的通信引腳除了通信之外,還有其他作用,如圖1所示, 其在上電時需要通過下拉10K電阻R3到GND實現低電平,并維持一段時間,以確保模塊B能正常啟動。 但如果直接使用該轉換電路,示波器測量到的模塊B引腳電平,在上電瞬間的波形如圖3所示,可以看到幅值在2.3V左右,已經達到了模塊B的高電平標準,因此,模塊B啟動失敗,之后該引腳一直輸出為低電平。
圖3
分析下工作過程, 上電瞬間,B點電壓是3.3V通過R2和R3分壓后得到 ,理論值等于2.2V,與實測波形接近。在該電路中,信號流是從B到A單向傳輸的,因此想到可以去掉電阻R2,那樣B點在上電瞬間就不會有上拉電壓,但是實際去掉R2后,模塊B依舊無法啟動。進一步分析,在上電瞬間B點電壓確實為0,但是也因此導致Vgs=3.3V,MOS管導通,R3又和上拉電阻R1形成了分壓關系,導致B點無法拉到低電平。
因此,如果想要繼續(xù)使用該電平轉換電路的話,必須加大上拉電阻R1和R2的值,使分壓后的B點電位達到低電平標準,但是上拉電阻改的太大的話,A端高電平可能會有問題,所以最終選擇使用兩個三極管組成的電平轉換電路,如圖4所示,問題解決。
圖4
-
三極管
+關注
關注
143文章
3622瀏覽量
122394 -
MOS管
+關注
關注
108文章
2439瀏覽量
67560 -
電平轉換電路
+關注
關注
1文章
46瀏覽量
13908
發(fā)布評論請先 登錄
相關推薦
評論