電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>工控技術>我們習以為常的IIC通常是什么樣子?資料下載

我們習以為常的IIC通常是什么樣子?資料下載

2021-03-29 | pdf | 115.2KB | 次下載 | 2積分

資料介紹

文章開頭提出一個問題供大家自測:IIC速度是多少?100kbps?400kbps?

答案:NO,High-speed mode,version2.1已經(jīng)支持到了3.4Mbps。


其實是這樣的:今天我們公司的一位技術大神,就因為我說了一句IIC很easy,然后他就拉著我給我講了一下午的IIC,小編內(nèi)心是崩潰的,然后大神丟了這篇文章給我。


01

我們習以為常的IIC通常是什么樣子?


在我們研發(fā)/應用工程師眼中,IIC的形象通常是如圖這樣的吧?(你們說是不是?)??? ? ? ??? ? ? ? ? ? ?



? ? ? ?



?是的,對于理想的硬件調(diào)程序,這個層面已經(jīng)基本夠用。(我是已經(jīng)get到了)


02

?IIC還可以是這樣的?


???


簡單實用的IIC電平匹配電路,原理很簡單、也很巧妙。



Si8400芯片,做UART或者IIC隔離是很不錯的。做隔離也有實際意義的:


比如涉及強電的板子,需要隔離后的UART口打印調(diào)試信息,方便debug;電容觸摸按鍵調(diào)試中,某些產(chǎn)品采用隔離的IIC接口(如Azoteq,Cypress等芯片大部分采用IIC)調(diào)試能得到更準確的數(shù)據(jù)(原理上涉及到人體大地等構成的寄生電容,挺有意思,可以看創(chuàng)易棧的觸摸按鍵相關內(nèi)容)。


有朋友會問,我見過5V芯片和3V芯片,直接把IIC接在一起的,不需要做電壓匹配呀?


這個不建議用。需要仔細看數(shù)據(jù)手冊的:一般來說3V芯片的I/O都有如圖的保護結構,導致SCL、SDA信號高電平被限制在3V+0.3V,5V芯片經(jīng)常不能正確識別的。




03

支持雙電壓的高速IIC接口





TI的TXS0102帶OE功能的高速IIC接口芯片。


這個有什么好處呢??


當然有,除了支持電平匹配;從它的MOS結構也可以看出,對SCL和SDA的上升邊緣有個加速過程,速度可以支持到2Mbps喔。


04

觸碰IIC的核心


每一個IIC總線器件內(nèi)部的SDA、SCL引腳電路結構都是一樣的,引腳的輸出驅動與輸入緩沖連在一起。其中輸出為漏極開路的場效應管、輸入緩沖為一只高輸入阻抗的同相器[1]。這種電路具有兩個特點:?


①由于SDA、SCL為漏極開路結構,借助于外部的上拉電阻實現(xiàn)了信號的“線與”邏輯;

②引腳在輸出信號的同時還將引腳上的電平進行檢測,檢測是否與剛才輸出一致。為?“時鐘拉伸”和“總線仲裁”提供硬件基礎。


I2C總線接口內(nèi)部結構


IIC設備對總線的操作僅有“把線路拉到地”——輸出邏輯0?;贗IC總線的設計,線路上不可能出現(xiàn)電平?jīng)_突現(xiàn)象。如果一設備發(fā)送邏輯0,其他發(fā)送邏輯1,那么線路看到的只有邏輯0。也就是說,如果出現(xiàn)電平?jīng)_突,發(fā)送邏輯0的始終是“贏家”??偩€的物理接法允許主設備往總線寫數(shù)據(jù)的同事讀取數(shù)據(jù)。這樣兩主設備爭總線的時候“贏家”并不知道競爭的發(fā)生,只有“輸家”發(fā)現(xiàn)了沖突——當寫一個邏輯1,卻讀到了0——而退出競爭。


時鐘拉伸(Clock stretching)

如果被控器希望主控器降低傳送速度可以通過將SCL主動拉低延長其低電平時間的方法來通知主控器,當主控器在準備下一次傳送發(fā)現(xiàn)SCL的電平被拉低時就進行等待,直至被控器完成操作并釋放SCL線的控制控制權。這樣以來,主控器實際上受到被控器的時鐘同步控制??梢奡CL線上的低電平是由時鐘低電平最長的器件決定;高電平的時間由高電平時間最短的器件決定。這就是時鐘拉伸,它解決了I2C總線的速度同步。



總線仲裁


假設主控器1要發(fā)送的數(shù)據(jù)DATA1為“101 ……”;主控器2要發(fā)送的數(shù)據(jù)DATA2為“1001 ……”總線被啟動后兩個主控器在每發(fā)送一個數(shù)據(jù)位時都要對自己的輸出電平進行檢測,只要檢測的電平與自己發(fā)出的電平一致,他們就會繼續(xù)占用總線。在這種情況下總線還是得不到仲裁。當主控器1發(fā)送第3位數(shù)據(jù)“1”時(主控器2發(fā)送“0”?),由于“線與”的結果SDA上的電平為“0”,這樣當主控器1檢測自己的輸出電平時,就會測到一個與自身不相符的“0”電平。這時主控器1只好放棄對總線的控制權;因此主控器2就成為總線的唯一主宰者。


總結

①?對于整個仲裁過程主控器1和主控器2都不會丟失數(shù)據(jù);

②?各個主控器沒有對總線實施控制的優(yōu)先級別;

③總線控制隨即而定,他們遵循“低電平優(yōu)先”的原則,即誰先發(fā)送低電平誰就會掌握對總線的控制權。


根據(jù)上面的描述,“時鐘拉伸”與“總線仲裁”可以總結如下規(guī)律:

①主控器通過檢測SCL上的電平來調(diào)節(jié)與從器件的速度同步問題——時鐘拉伸;

②主控器通過檢測SDA上自身發(fā)送的電平來判斷是否發(fā)生總線“沖突”——總線仲裁。因此,I2C總線的“時鐘同步”與“總線仲裁”是靠器件自身接口的特殊結構得以實現(xiàn)的。

(mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  11次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5DIY動手組裝LED電子顯示屏
  10. 0.98 MB  |  3次下載  |  免費
  11. 6基于FPGA的C8051F單片機開發(fā)板設計
  12. 0.70 MB  |  2次下載  |  免費
  13. 751單片機PM2.5檢測系統(tǒng)程序
  14. 0.83 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537797次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191186次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費