?
電路小課堂,總結一下常用的電平轉換電路。
?
前言
一、二極管電平轉換電路
二、三極管電平轉換電路
2.1 電路一
電路分析
2.2 電路二
電路分析
三、MOS管電平轉換電路
電路分析
四、電平轉換芯片
結語
前言
電路小課堂時間到,今天我們要聊的是 電平轉換電路。
那么什么是電平轉換?為什么需要電平轉換?
簡單說明一下,在我們設計的電路中,不同芯片的引腳使用的電壓不同,比如常見的1.8V、3.3V、5V等,在兩種不同電壓芯片引腳之間進行通訊時候,我們需要使得兩邊的電平都符合自身的需求且能夠進行正常的通訊,這就叫電平轉換。
因為不同電壓芯片之間的通訊存在電平不匹配的問題,同時如果通訊的兩端壓差過大也可能會損壞芯片引腳,所以我們需要進行電平轉換。
一般來說,我們進行電平轉換,主要考慮的有信號傳輸的速度以及信號的方向問題。
本文根據博主實際項目經驗,總結一些我們常用的電平轉換電路。
一、二極管電平轉換電路
二極管電平轉換電路,其實我自己并不常用,只是以前測試使用過:
使用此電路需要注意轉換的方向,高電壓端和低電壓端不可調換。
電路分析
當輸入端 3.3V_IN 為低電平時,D1導通,輸出端 1.8V_OUT 為低電平,實現兩端都為低電平。
當輸入端 3.3V_IN 為高電平時,D1截止,輸出端 被 R1 上拉至 1.8V ,為高電平,實現兩端都為高電平。
因為確實沒有實際產品用過,所以不太好評價 = =!。
二、三極管電平轉換電路
三極管實現電平轉換,有點類似二極管,一樣需要注意方向。
2.1 電路一
第一種電路如下:
此例子為博主使用過的4G模塊與 STM32 通訊使用過的電路。
上圖中上面部分三極管基區的電壓 VDD_EXT 沒用錯,以上圖為例,這個基區電壓給 VDD_MCU 或者 VDD_EXT 都是可以的。但是下面部分的電路三極管基區的電壓必須是 VDD_EXT 。
電路分析
當輸入端為 低電平 0V的時候,三極管導通,輸出端 與輸入端導通,輸出端被拉低到接近0V,實現兩端都為低電平。
當輸入端為 高電平的時候,三極管截止, 輸出端 靠著上拉電阻(上圖中的 R17、R19),變成高電平,實現兩端都被高電平。
2.2 電路二
三極管電平轉換電路第二種方式:
此例子為博主使用過的信號采集電路,外接的信號最高電壓為1.8V,為了保證STM32能夠穩定的接收到,使用此電路將外接的信號轉化為穩定的高低電平。
電路分析
當輸入 S_IN 為低電平時,三極管 Q1關斷,三極管 Q2 基極為高電平,導致 Q2 導通,輸出端 S_OUT被拉低,實現兩端都為低電平。
當輸入 S_IN 為高電平 (VDD_EXT) 時,三極管 Q1 導通,三極管Q2關斷,輸出端 S_OUT 被 R4 拉高到 VDD_MCU,實現兩端都為高電平。
三極管電平轉換電路,便宜實用,但是只能單向轉化。而且不適用于波特率過高的應用(大概大于 400Kbps 就不建議用了)。
三、MOS管電平轉換電路
講過二極管,三極管,最后還是有MOS管,不得不說MOS在當下的應用之廣泛,而且下面這個電平轉換,是博主用得最多的,MOS管雙向電平轉換電路:
此例子為博主使用過的1.8V單片機與 傳感器 I2C 通訊電路。
注意事項:
1、該電路只能用于收發雙方都是開集(Open Collector, OC)或開漏(Open Drain, OD)結構輸出的雙向信號線。比如常見的I2C通訊。
2、VCC_S1 <= VCC_S2
3、MOS管導通電壓門限(Vth(GS)里面的最大值)需要小于低電源電壓。
電路分析
我們使用上圖來簡單分一下電路:
從左向右看
當 S1A 為高電平 (VCC_S1) 時候,MOS管 VGS = 0, NM1 不導通,S2A 處電平被 R11 上拉為高電平(VCC_S2),S2A也為高電平。兩端都為高電平。當 S1A 為低電平 時候,MOS管 VGS = VCC_S1, NM1 導通,S2A 的電平與 S1A相等,為低電平。兩端都為低電平。
從右向左看
這里說明一下開漏輸出,由于有上拉電阻,所以沒有外部影響的正常情況下,S1A 和 S2A 默認都會是高電平。
當 S2A 為高電平 (VCC_S2) 時候:
假設左側 S1A 為高電平(因為是開漏輸出,所以左側一般來說被 R10 上拉至高電平 (VCC_S1),除非線上有低電平拉低,這里我們仍然分兩種情況論),MOS管 VGS = 0, NM1 不導通,左側依然被R10 上拉至高電平 (VCC_S1)。兩端都為高電平。
假設左側 S1A 為低電平(正常不會發生,原因就是開漏輸出),MOS管 VGS = VCC_S1, NM1 導通,S2A 為高電平,所以會導致 S1A 電壓上升,等 S1A 上升到 VCC_S1 的時候,NM1 截止,兩端都變成高電平(除非開始使得 S1A 為低電平的外界因數一直存在,這是外部的問題不做過多討論)。
當 S2A 為低電平時候:
正常情況下左側 S1A 為高電平(VCC_S1),MOS管 VGS = 0, NM1 不導通,但是由于 MOS 管的寄生二極管,會把 S1A 下拉至低電平(這個低電平不是0V,是比 S2A 高一個二極管壓降,比如 0.7V),那么VGS =(VCC_S1 - 0.7V),使得 NM1導通,導通以后,那么 S1A 和 S1B 基本相等,兩端都為低電平。
如果 S1A 開始就為低電平(正常不會發生),MOS管 VGS = VCC_S1, NM1 導通,S2A 的電平與 S1A相等,為低電平。兩端都為低電平。
最經典的電平轉換電路,雙向電平轉換。常用于 I2C通訊。不能用于推挽輸出的IO口,MOS管的選型需要注意 VGS(th)(開啟電壓) 要小于通訊兩端的需要的電源電壓。
四、電平轉換芯片
電平轉換芯片在我一般項目中用得倒不是很多,一般的項目應用上面的MOS管電路已經可以滿足需求。但是在一些高速通訊的場合,就需要用到專用的電平轉換芯片。芯片有很多種,單向電平轉換、帶方向控制的雙向電平轉換、自動雙向電平轉換等,一般來說都用上芯片了,肯定會選擇自動雙向電平轉換芯片,然后一些參數在芯片手冊都會比較詳細的給出,比如 TI 的 TXS0108EPWR:用法也是比較簡單的:
成本相對前面較高,但是速度快,雙向并且能夠自動檢測方向,高速低速場合都適用。如果對成本不敏感,電平轉換芯片是最穩定可靠的方式。
結語
本文把單片機系統中常用的電平轉換電路總結了一遍,同時對于他們的應用場合也給出了例子。
總的來說,本文還是比較簡單!當然,博主的電路小課堂就是要把我們平時常用的一些電路做好總結分析,以便于自己和小伙伴們能夠在需要的時候找到自己合適的電路。
評論
查看更多