I2C 電壓準位轉換電路圖 (V0.2) 感謝網友 Tad Chu 的提醒,修正 Q1 和 Q2 的接腳錯位問題 |
寫這網頁的主要目的:轉換兩個不同電壓之間通訊的準位,且是可雙向溝通的。
在 proteus 的 賣場 裡,販售的大多是 3V3 或是 5V 控制的電子零件,有時候因為控制訊號與微處理器之間電壓準位的關係,必須在兩者之間再加入準位轉換的模組才能正常通訊,但這大多用在單向通訊或是控制比較多。所以若是出現需要在同一支接腳實現收、或發的動作,例如 I2C 的 SDA 接腳,若不是需要很多支情形之下,上面的電壓準位轉換電路就是一個很好的選擇 !
所需的主要材料為:
- 2 pcs * [ 2N7000, N-Channel MOSFET ], ( PDF, 英文 )
- 4 pcs * [ 4K7, 1/4 W, 5% ]
- 麵包板 ( 有就好,不一定要跟網頁中使用的一樣 )
- 單芯線少許 ( 差不多 20 ... 30 公分就夠了 )
- 雙頭單排排針與杜邦線 ( 視所接的東西準備就可以了 )
電路圖上的符號跟 2N7000 不太相同,別介意,意思到了就好 !
N-Channel MOSFET 不一定要使用 2N7000,拿手邊或是買的到的就可以了,除非使用的裝置數量多再考慮其他高規格的。
而電阻用 4K7 是因為 BMP180 資料手冊上的建議。因為是將此電路作為 I2C 來用,故每一個電壓準位端是兩兩成對,若需要做更換就一次換兩個,而數值可以參考裝置的資料手冊上的建議值或是 I2C 規範上的建議;只要通訊穩定的話,就可以不用去管它!
為了讓接線看起來清楚,麵包板上的接線顏色各代表:
- 紅色:+5V
- 綠色:GND
- 黃色:+3V3
- 黑色:SDA
- 藍色:SCL
為了讓接線能夠切合實際的需要,我們使用 BMP180 作為目標裝置,轉換由 5V 微處理器或系統的 I2C 訊號為 3V3 電壓準位。當然!也可以使用其他需要轉換的裝置來做,我們只是需要知到要接到哪裡去而已。
2N 7000 TO-92 接腳的定義如下圖所示,
將 BMP180 與兩顆 2N7000 N-Channel MOSFET先插置到麵包板適當的位置
下圖,使用四根不一樣的線標示不同的插點功能,在麵包板的右上方是 +5V 電壓端,由左至右為:SDA、SCL、GND 與 +5V。
接上兩支 4K7 提升電阻到 +5V 輸入端
接上兩支 4K7 提升電阻到 +3V3 輸入端
連接 +5V 電壓端的 GND 線到 BMP180 的 GND
連接 BMP180 的 SDA 至左側 MOSFET 的 S 接腳
連接 +5V 電壓端的 SDA 至右側 MOSFET 的 D 接腳
連接 +5V 電源至 BMP180 的 VCC 接腳,不但可提供 BMP180 電源,經內部 LDO 降壓晶片,其最左邊 3V3 接腳可輸出 +3V3 的電源給 MOSFET 用
連接 BMP180 的 SCL 至左側 MOSFET 的 S 接腳
連接 +5V 電壓端的 SCL 至右側 MOSFET 的 D 接腳
MOSFET 需要 +3V3 的電源,連接左、右側 MOSFET 中間的 G 接腳至 BMP180 的 3.3 接腳
最後就完成了 I2C Level Shifter ( I2C 電壓準位轉換 ) 電路,左有兩側各代表 +3V3 電壓端與 +5V 電壓端
將 +5V、GND、SDA 與 SCL 接上右側的 +5V 輸入端,就可以開始與裝置通訊。如下圖為使用 BMP180 完成的 I2C 電壓準位轉換電路使用這個電路在需要做單向或是雙向通訊電壓準位轉換上。而上面接用 BMP180 所完成的線路,可作為後續 BMP180 與 5V 微處理器系統的程式測試上。
若不想自己佈線的話,可以考慮到露天賣場購買!
- 四通道電壓準位轉換模組
- LSF0204 四通道雙向多電壓準位轉換模組
.
你好:
回覆刪除反映個問題關於I2C 電壓準位轉換電路圖
照理說3.3v那端要接SOURCE端 5v接DRAIN.
您再看一下!
打擾了!
實際接線的部分是正確的,電路圖部分已經全部更正,真是謝謝你的提醒!
刪除