在最近的項目中,由于CPU所用的IO的電壓比較低,很多IO的電壓域的電壓都是1.8V,而外圍設(shè)備電路通常所用的電壓是3.3V和5V,當CPU需要與外圍設(shè)備通信時就會出現(xiàn)通信接口電壓不匹配的情況,此時就需要對通信接口進行電平轉(zhuǎn)換。下面我們以I2C接口電路進行分析,電路如下:

那么它是如何實現(xiàn)不同電壓域之間的雙向通信的呢?
原理分析
為了便于分析,我們使用其中一根線進行分析,下面是I2C的數(shù)據(jù)線原理圖:

當SDA1輸出高電平時:MOS管Q1的Vgs = 0,MOS管關(guān)閉,SDA2被電阻R2上拉到3.3V。
當SDA1輸出低電平時:MOS管Q1的Vgs = 1.8V,大于導通電壓,MOS管導通,SDA2通過MOS管被拉到低電平。
當SDA2輸出高電平時:MOS管Q1的Vgs不變,MOS維持關(guān)閉狀態(tài),SDA1被電阻R1上拉到1.8V。
當SDA2輸出低電平時:MOS管不導通,但是它有個寄生二極管!MOS管里的寄生二極管把SDA1拉低到低電平,此時Vgs約等于1.8V,MOS管導通,進一步拉低了SDA1的電壓。
-
接口電路
+關(guān)注
關(guān)注
8文章
471瀏覽量
58269 -
cpu
+關(guān)注
關(guān)注
68文章
11213瀏覽量
222789 -
通信接口
+關(guān)注
關(guān)注
3文章
259瀏覽量
31793 -
I2C
+關(guān)注
關(guān)注
28文章
1547瀏覽量
130427 -
電平轉(zhuǎn)換電路
+關(guān)注
關(guān)注
1文章
46瀏覽量
14167
發(fā)布評論請先 登錄
請問一下怎樣去設(shè)計一種I2C雙向電平轉(zhuǎn)換電路
怎樣去設(shè)計一個不同電源系統(tǒng)下I2C總線電平轉(zhuǎn)換電路
PCA9306 I2C總線和SMBus雙向電平轉(zhuǎn)換器簡介
電平轉(zhuǎn)換器解決I2C總線應用的兼容性
I2C雙向電平轉(zhuǎn)換電路
硬件I2C與模擬I2C
硬件設(shè)計:接口--不同電源系統(tǒng)下I2C總線電平轉(zhuǎn)換電路(電橋)設(shè)計
I2C 總線設(shè)計中的電平轉(zhuǎn)換技術(shù)-AN10441
用于Arduino Due的簡單DIY雙端口I2C電平轉(zhuǎn)換屏蔽
TCA9509電平轉(zhuǎn)換I2C和SMBUS總線中繼器數(shù)據(jù)表
PCA9517電平轉(zhuǎn)換I2C總線中繼器數(shù)據(jù)表
TCA9517電平轉(zhuǎn)換I2C總線中繼器數(shù)據(jù)表

I2C電平轉(zhuǎn)換電路原理分析
評論