在最近的項目中,由于CPU所用的IO的電壓比較低,很多IO的電壓域的電壓都是1.8V,而外圍設備電路通常所用的電壓是3.3V和5V,當CPU需要與外圍設備通信時就會出現通信接口電壓不匹配的情況,此時就需要對通信接口進行電平轉換。下面我們以I2C接口電路進行分析,電路如下:
那么它是如何實現不同電壓域之間的雙向通信的呢?
原理分析
為了便于分析,我們使用其中一根線進行分析,下面是I2C的數據線原理圖:
當SDA1輸出高電平時:MOS管Q1的Vgs = 0,MOS管關閉,SDA2被電阻R2上拉到3.3V。
當SDA1輸出低電平時:MOS管Q1的Vgs = 1.8V,大于導通電壓,MOS管導通,SDA2通過MOS管被拉到低電平。
當SDA2輸出高電平時:MOS管Q1的Vgs不變,MOS維持關閉狀態,SDA1被電阻R1上拉到1.8V。
當SDA2輸出低電平時:MOS管不導通,但是它有個寄生二極管!MOS管里的寄生二極管把SDA1拉低到低電平,此時Vgs約等于1.8V,MOS管導通,進一步拉低了SDA1的電壓。
-
接口電路
+關注
關注
8文章
465瀏覽量
57112 -
cpu
+關注
關注
68文章
10879瀏覽量
212194 -
通信接口
+關注
關注
3文章
239瀏覽量
31010 -
I2C
+關注
關注
28文章
1490瀏覽量
124016 -
電平轉換電路
+關注
關注
1文章
46瀏覽量
13883
發布評論請先 登錄
相關推薦
評論