色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

不理解i2C?現在來教你

瞿小洲 ? 來源:jf_33322995 ? 作者:jf_33322995 ? 2024-07-10 09:26 ? 次閱讀

I2C(Inter-Integrated Circuit,集成電路總線)是一種簡單、雙向、二線制的串行通信總線,由Philips半導體公司(現在的NXP半導體公司)在八十年代初設計出來。它以通俗易懂的方式解釋如下:

基本概念

雙向二線制:I2C總線只使用兩根線——一根數據線(SDA)和一根時鐘線(SCL),就可以實現數據的雙向傳輸。這種設計使得連接設備變得非常簡單和節省空間。

串行通信:數據不是同時傳輸多個比特(并行通信),而是按順序一個接一個地傳輸(串行通信)。這雖然降低了傳輸速度,但簡化了硬件設計。

wKgaomaN4w2AaeUYAABSst5mEgU628.png

工作原理

SCL為高電平的時候,SDA由高電平向低電平跳變。SCL為高電平的時候,SDA由低電平向高電平跳變。

I2C總線上的所有數據都是以8位字節傳送的,發送器每發送一個字節,就在時鐘脈沖9期間釋放數據線,由接收器反饋一個應答信號。應答信號為低電平時,規定為有效應答位(ACK簡稱應答位),表示接收器已經成功地接收了該字節;應答信號為高電平時,規定為非應答位(NACK),一般表示接收器接收該字節沒有成功,對于反饋有效應答位ACK的要求是,接收器在第9個時鐘脈沖之前的低電平期間將SDA線拉低,并且確保在該時鐘的高電平期間為穩定的低電平。如果接收器是主控器,則在它收到最后一個字節后,發送一個NACK信號,以通知被控發送器結束數據發送,并釋放SDA線,以便主控接收器發送一個停止信號P。

主機+從設備地址+寫命令,從機應答,應答成功,表示有這個設備,然后主機+設備內部寄存器地址,此時不用再加寫命令控制字,從機應答,應答成功,表示設備內有這個地址,主機寫入數據,從機應答,是否繼續發送,不發送的話,發送停止信號P。

要想讀設備,首先要知道將要所讀取設備的地址告訴從設備,從設備才能將數據放到(發送)SDA上使主設備讀取,從設備將數據放入SDA上的過程,由硬件主動完成,不用人為的寫入。所以首先先寫入從機地址,然后+寫控制命令,從機應答,應答成功,表示有這個設備,然后寫入內部寄存器地址,此時不用再加寫命令控制字,從機應答,應答成功,表示設備內有這個地址。然后主機繼續發出:寫入從機地址,然后+讀命令,從機應答,應答成功,此時便可以讀取數據了,從設備已經將數據放入到SDA上了。地址跟設備已經驗證了,不用再進行驗證。

I2C總線總線的SDA和SCL兩條信號線同時處于高電平時,規定為總線的空閑狀態。此時各個器件的輸出級場效應管均處在截止狀態,即釋放總線,由兩條信號線各自的上拉電阻把電平拉高。

為了支持您的項目開發需求,我們特別準備了詳盡的開發資料(有例程)。若您對此感興趣,并希望獲得這些資源以助力您的項目進展,歡迎添加我的微信(限前50位:xinsousou 會親自解答)。我將免費為您發送這些資料,希望能為您的開發工作帶來便利與啟發。

總線封鎖狀態

在特殊情況下,如果需要禁止所有發生在I2C總線上的通信活動,封鎖或關閉總線是一種可行途徑,只要掛接于該總線上的任意一個器件將時鐘線SCL鎖定在低電平上即可。

總線競爭的仲裁

總線上可能掛接有多個器件,有時會發生兩個或多個主器件同時想占用總線的情況,這種情況叫做總線競爭。I2C總線具有多主控能力,可以對發生在SDA線上的總線競爭進行仲裁,其仲裁原則是這樣的:當多個主器件同時想占用總線時,如果某個主器件發送高電平,而另一個主器件發送低電平,則發送電平與此時SDA總線電平不符的那個器件將自動關閉其輸出級。總線競爭的仲裁是在兩個層次上進行的。首先是地址位的比較,如果主器件尋址同一個從器件,則進入數據位的比較,從而確保了競爭仲裁的可靠性。由于是利用I2C總線上的信息進行仲裁,因此不會造成信息的丟失。

為何識別到“0”將丟失仲裁呢?因為對于OD門,只能驅動到低電平,釋放總線只能通過不驅動總線釋放,停止驅動即產生“1”,但是發現總線還是“0”,這說明還有主機在跟自己競爭總線使用權,自己線驅動到“1”,確檢測到“0”,那代表自己已經失去了仲裁。

主機只能在總線空閑的時侯啟動傳送。兩個或多個主機可能在起始條件的最小持續時間tHD;STA 內產生一個起始條件,結果在總線上產生一個規定的起始條件。

當SCL 線是高電平時,仲裁在SDA 線發生;這樣,在其他主機發送低電平時,發送高電平的主機將斷開它的數據輸出級,因為總線上的電平與它自己的電平不相同。然后,進一步獲得其的判定條件:

仲裁可以持續多位。首先是比較地址位。如果每個主機都試圖尋址同一的器件,仲裁會繼續比較數據位(假設主機是發送器),或者比較響應位(假設主機是接收器)。

I2C 總線的地址和數據信息由贏得仲裁的主機決定,在仲裁過程中不會丟失信息。丟失仲裁的主機可以產生時鐘脈沖直到丟失仲裁的該字節末尾。

在串行傳輸過程中時,一旦有重復的起始條件或停止條件發送到I2C 總線的時侯,仲裁過程仍在進行。如果可能產生這樣的情況,有關的主機必須在幀格式相同位置發送這個重復起始條件或停止條件。

此外,如果主機也結合了從機功能,而且在尋址階段丟失仲裁,它很可能就是贏得仲裁的主機在尋址的器件。那么,丟失仲裁的主機必須立即切換到它的從機模式。

I2C 總線的控制只由地址或主機碼以及競爭主機發送的數據決定,沒有中央主機,總線也沒有任何定制的優先權。

通信過程

起始信號:當SCL為高電平時,SDA由高電平向低電平跳變,表示通信開始。

發送地址:主機發送一個字節的數據,其中包含了從機的地址和后續字節的傳送方向(讀或寫)。

從機應答:從機在接收到地址后,如果地址匹配,則在第9個時鐘周期將SDA拉低以應答;如果不匹配或無法應答,則保持SDA為高電平。

數據傳輸:在確認從機應答后,主機開始發送或接收數據。每個字節的數據后面都跟著一個應答位,以確保數據傳輸的可靠性。

結束信號:當數據傳輸完成后,主機發送停止信號來結束通信。停止信號是在SCL為高電平時,SDA由低電平向高電平跳變。

時序圖

wKgaomaN4mKACo6_AAFtVWZmlIY248.png

I2C總線因其簡單性和靈活性而被廣泛應用于各種電子設備中,如連接傳感器、存儲器、顯示屏等外設到微控制器微處理器上。它特別適用于需要多個設備共享通信線并由一個(或多個)主設備管理的場景。

總結

I2C是一種簡單、雙向、二線制的串行通信總線,通過兩根線(SDA和SCL)實現數據的雙向傳輸。它采用主從架構和時鐘同步機制來確保數據的可靠傳輸。由于其簡單性和靈活性,I2C總線在電子設備中得到了廣泛應用。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RS485
    +關注

    關注

    39

    文章

    1186

    瀏覽量

    83359
  • 總線
    +關注

    關注

    10

    文章

    2935

    瀏覽量

    89106
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1511

    瀏覽量

    126364
收藏 0人收藏

    評論

    相關推薦

    I2C總線復用

    帝晶智慧屏I2C總線復用
    的頭像 發表于 03-11 17:20 ?1206次閱讀

    I2C總線通信原理 如何設計I2C總線電路

    I2C總線通信原理 I2C(Inter-Integrated Circuit)總線是一種用于集成電路之間進行通信的串行通信協議。它最早由飛利浦公司(現被恩智浦電子收購)于1982年推出,是一種簡單
    的頭像 發表于 01-31 15:01 ?671次閱讀

    I2C總線與Arduino的接口示例

    在現代電子設計中,I2C總線因其簡單性和靈活性而廣受歡迎。它允許多個設備共享同一通信線路,從而節省空間和成本。Arduino,作為一個多功能的微控制器平臺,自然也支持I2C通信。 I2C總線
    的頭像 發表于 01-17 15:34 ?1050次閱讀

    I2C總線的工作模式介紹

    在現代電子系統中,I2C總線作為一種多主機、多從機的串行通信協議,扮演著至關重要的角色。它允許多個設備共享同一總線,進行數據傳輸,從而簡化了系統設計并降低了成本。 I2C總線的基本特性 I2C總線由
    的頭像 發表于 01-17 15:32 ?588次閱讀

    I2C總線應用實例分析

    在現代電子系統中,I2C總線因其簡單、靈活和高效的特點而被廣泛應用于各種設備之間的通信。 I2C總線概述 I2C總線由Philips(現為NXP)在1980年代初期開發,最初用于音頻和視頻設備
    的頭像 發表于 01-17 15:09 ?487次閱讀

    RISC V的I2C操作

    _0_io_scl_write(system_i2c_0_io_scl_write),.system_i2c_0_io_scl_read(system_i2c_0_io_scl_read),WriteEnable信號的處理
    的頭像 發表于 11-01 11:06 ?539次閱讀

    I2C協議的基礎知識

    本文從I2C協議的概述開始,描述協議的歷史、不同速度模式、物理層和數據幀結構,最后介紹I2C混合電壓系統中電平兼容性以及上拉電阻大小計算。
    的頭像 發表于 10-22 15:51 ?1177次閱讀
    <b class='flag-5'>I2C</b>協議的基礎知識

    使用USCI I2C主站

    電子發燒友網站提供《使用USCI I2C主站.pdf》資料免費下載
    發表于 10-21 09:30 ?0次下載
    使用USCI <b class='flag-5'>I2C</b>主站

    I2C噪聲毛刺濾波

    電子發燒友網站提供《I2C噪聲毛刺濾波.pdf》資料免費下載
    發表于 10-08 14:39 ?6次下載
    <b class='flag-5'>I2C</b>噪聲毛刺濾波

    了解I2C總線

    電子發燒友網站提供《了解I2C總線.pdf》資料免費下載
    發表于 10-08 11:13 ?2次下載
    了解<b class='flag-5'>I2C</b>總線

    I2C基本指南

    電子發燒友網站提供《I2C基本指南.pdf》資料免費下載
    發表于 09-10 09:40 ?0次下載
    <b class='flag-5'>I2C</b>基本指南

    CAN轉I2C橋接器

    電子發燒友網站提供《CAN轉I2C橋接器.pdf》資料免費下載
    發表于 08-28 11:10 ?0次下載
    CAN轉<b class='flag-5'>I2C</b>橋接器

    UART轉I2C橋接器

    電子發燒友網站提供《UART轉I2C橋接器.pdf》資料免費下載
    發表于 08-28 09:24 ?1次下載
    UART轉<b class='flag-5'>I2C</b>橋接器

    I2C邏輯選型指南

    電子發燒友網站提供《I2C邏輯選型指南.pdf》資料免費下載
    發表于 06-20 16:20 ?2次下載

    I2C總線協議的工作原理和尋址格式

    等特點,在嵌入式系統設計中得到了廣泛應用。本文將詳細介紹I2C總線協議的工作原理和尋址格式,幫助讀者深入理解該協議。
    的頭像 發表于 05-27 15:47 ?2415次閱讀

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品
    主站蜘蛛池模板: 一区三区不卡高清影视 | 久久青青草原综合伊人 | 动漫在线观看免费肉肉 | 在线观看国产精选免费 | 亚洲av欧美在我 | 国产精品免费一区二区三区四区 | 国产成人在线网站 | 真实处破女全过程完免费观看 | 久久99国产综合精品AV蜜桃 | 久久re视频这里精品免费1 | 日本一卡2卡3卡四卡精品网站 | 精品无码久久久久久动漫 | 成人免费肉动漫无遮网站 | 热久久综合这里只有精品电影 | 国产精品视频一区二区猎奇 | 日韩免费一区二区三区在线 | 2021精品国产综合久久 | 久久综合电影 | 午夜天堂一区人妻 | 五花大绑esebdsm国产 | 么公一夜要了我一八次视频HD | www.黄色| 精品国产国偷自产在线观看 | 亚洲精品高清中文字幕完整版 | 国产精品96久久久久久AV不卡 | 国产精品亚洲在钱视频 | 寂寞夜晚在线视频观看 | 中文字幕久久熟女人妻AV免费 | 一级性生活毛片 | 成人免费毛片观看 | 99久久亚洲精品影院 | 歪歪爽蜜臀AV久久精品人人槡 | 在线 亚洲 日韩 欧洲视频 | www.黄色| 久久99视频免费 | 恋夜影院支持安卓视频美女 | 臀精插宫NP文 | 少妇高潮A片特黄久久精品网 | 午夜视频无码国产在线观看 | 2018国产天天弄谢 | 我的年轻漂亮继坶三级 |