原创 I2C接口技术经典问答

2007-8-8 14:13 1493 2 2 分类: 消费电子
文章末了,將一些平常對I2C介面的詢問做個條列式整理摘要,方便讀者們閱讀或是查詢之用。

問題一:I2C介面的最長連接距離為何?

答:這個問題的答案與介面上的負載相關聯。典型的應用約是9~12英尺左右。

問題二:若要延長I2C介面,有沒有類似中繼器(Repeater)解決方法?
答:當然有,這是屬於電流放大器(Current Amplifier)的屬性應用。可以解決線長的電容負載。然而,傳送端以及接收端必須搭配使用,避免衍生困擾。
 

fo1180.15.JPG

圖十五  I2C介面電流放大器。
 

問題三:市面上有沒有獨立的I2C介面控制器?
答:確實有,比如PCD8584或PCF8584等元件等。

問題四:為何SCL信號線必須為雙向?
答:理由很單純,當使用多個主控制的場合就需要了。

問題五:如何追蹤I2C介面上的信號活動?
答:市面上有些廠商在販售監視裝置 (Monitor)或除錯工具(Debugger),可以自行上網查詢。

問題六:I2C介面與SMbus的差異性與相容性?
答:這是一個好問題。兩者都是兩線式(2-wire)的介面,基本上是彼此相容的。然而,SMbus的動作速度僅有100KHz,I2C介面尚有400KHz與2MHz。因此,相容性是指「有限度」的相容性。
 

fo1180.16.JPG

圖十六 典型的資料通信架構,都有起始(Start)與結束(Stop)狀態。
 

逾時(Timeout)以及最小的時脈速度,可說是I2C介面與SMbus的最大差異。

◎ I2C Bus = DC (no timeout)
◎ SMBus = 10kHz (35mS timeout)

其次,若仔細來觀察信號邏輯位階,兩者還是有所不同,請參閱下圖。
 

fo1180.17.JPG

圖十七 I2C介面與SMbus的信號邏輯位階。
 

拉高電阻與電流位階(Current level)部分也值得注意。SMBus規定的沉入電流(Sink current)為100uA~350uA,I2C介面卻是3mA,間接也就決定了拉高電阻的可接受值。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
2
关闭 站长推荐上一条 /1 下一条