<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

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

3天內不再提示

通信教程03_I2C簡史 基礎原理及協議

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 作者:黃工的嵌入式技術 ? 2020-02-05 13:14 ? 次閱讀

教程由作者strongerHuang于2019年09月原創發布。

標簽:串口、 I2C、 通信

版權所有:禁止商用

申明:該文檔僅供個人學習使用,轉載請公眾號聯系作者授權。

1寫在前面

本打算先寫點UART相關內容,但UART基礎知識在前面第一篇文章都簡單寫過,也相信大家不陌生,這里就不再次贅述。

I2C是目前使用較多的一種總線,一般用于連接各種從設備,比如:EEPROM存儲器、溫濕度傳感器、角速度計等。

額外提一句,初入職場的人有必要學習了解下,掌握I2C算是最基本的技能。

2I2C簡史

1980年,飛利浦公司為了讓各種低速設備(飛利浦芯片)連接起來,就開始著手研發通信的總線。

1982年,原始版本,使用了100KHz通信速率,提供7位地址,將總線上的器件數量限制為112(有幾個保留地址)。

1992年,發布第一個規范,增加了400kHz的快速模式以及擴展的10位地址空間。

1998年,隨著技術的進步,通信速率要求越來越高,達到了高速3.4 MHz,再到后面升級至5MHz,同時使用差分信號以改進抗噪聲能力等。

I2C版本歷史:

額外說一下SMBus:

1995年,英特爾在I2C基礎上推出了一種變體稱為“系統管理總線”(SMBus)。SMBus是一種更嚴格控制的格式,旨在最大限度地提高PC主板上支持IC之間通信的可預測性。

SMBus之間最顯著的區別在于它將速度限制在10kHz至100kHz之間,而I2C則可以支持0kHz至5MHz的器件。

3I2C基礎內容

I2C:Inter-Integrated Circuit,字面意思是集成電路之間,是I2C Bus簡稱。

I2C只需要兩根電線,這兩根線最多可支持1008個從設備,實現同步串行通信。

與SPI不同的是,I2C可以支持多主機,多從機的總線。

3.1 I2C兩線信號

每個I2C總線由兩個信號組成:SCL時鐘信號,SDA數據信號。時鐘信號總是由當前總線主機產生。

與UART、SPI不同,I 2 C總線驅動器是開漏(不了解開漏的請自行百度),意思是它們可以將相應的信號線拉低,但不能將其驅動為高電平。

每條信號線上都有一個上拉電阻,當沒有器件將其置為低電平時,將信號恢復為高電平。

3.2 信號電平

通常,I2C總線信號電平5V、3.3V居多,如果總線上器件兼容這兩種電平,可以直接使用。

如果信號電壓相差很大(5V和2.5V),或者電平不兼容,就需要進行電平轉換才行。

4I2C協議

I2C對初學者來說,難點就在于理解其中協議,下面從幾個簡單角度說一下。

4.1 收發基本原理

I2C的兩個總線:SCL時鐘信號,SDA數據信號。SCL由主機產生,SDA由主機或者從機產生。

I2C是同步串行通信,同時它屬于半雙工,也就是說同一時間SDA只能由一個設備發送信號。

這樣,你就會發現,SDA上的信號(數據),有時候是主機的,有時候是從機的。

4.2 基本協議:7/10位地址

I2C支持7位地址和10位地址,消息主要分為兩種:地址和數據。

7位地址:

10位地址:

除了地址和數據,還有開始條件、停止條件、讀寫,以及應答信息(上圖小字描述)。

4.3 開始和停止

SDA數據線由高 -> 低 為總線開始條件;

SDA數據線由低 -> 高 為總線結束條件;

4.4 應答(ACK)和非應答(ACK)

應答和非應答發生在每個字節之后,是由接收方向發送方發出確認信號,表明“數據”已成功接收,并且可以繼續發送下一字節數據。

應答有很多種情況,初學者可以參考協議手冊,里面有詳細講述。

I2C協議手冊地址:

https://www.nxp.com/docs/en/user-guide/UM10204.pdf

我之前結合模擬I2C代碼講述I2C的文章:

更加深入理解I2C總線、協議及應用

5

說明

1.該文檔僅供個人學習使用,版權所有,禁止商用。

2.本文由我一個人編輯并整理,難免存在一些錯誤。

3.本文收錄于公眾號『嵌入式專欄』,關注微信公眾號回復【通信教程】即可查看全系列教程。

6最后

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

    關注

    28

    文章

    737

    瀏覽量

    39745
  • 通信
    +關注

    關注

    18

    文章

    5706

    瀏覽量

    134390
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1346

    瀏覽量

    120816
收藏 人收藏

    評論

    相關推薦

    全面掌握面試必考題I2C協議 - 第13節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:08:34

    全面掌握面試必考題I2C協議 - 第12節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:07:43

    全面掌握面試必考題I2C協議 - 第11節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:06:53

    全面掌握面試必考題I2C協議 - 第10節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:06:03

    全面掌握面試必考題I2C協議 - 第9節 #硬聲創作季

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:05:13

    全面掌握面試必考題I2C協議 - 第8節 #硬聲創作季

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:04:22

    全面掌握面試必考題I2C協議 - 第7節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:03:32

    全面掌握面試必考題I2C協議 - 第6節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:02:42

    全面掌握面試必考題I2C協議 - 第5節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:01:51

    全面掌握面試必考題I2C協議 - 第4節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:01:01

    全面掌握面試必考題I2C協議 - 第3節 #硬聲創作季

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:00:11

    全面掌握面試必考題I2C協議 - 第2節 #硬聲創作季

    I2C協議
    充八萬
    發布于 :2023年09月01日 18:59:21

    全面掌握面試必考題I2C協議 - 第1節

    I2C協議
    充八萬
    發布于 :2023年09月01日 18:58:30

    80 第23.1講 I2C實驗-I2C協議和6U的I2C控制器詳解 - 第2

    程序代碼I2C協議
    充八萬
    發布于 :2023年08月17日 10:03:33

    基于 FPGA 的模擬 I2C協議系統設計

    被廣泛使用的讀法。自2006年10月1日起,使用 I2C 協議已經不需要支付專利費,但制造商仍然需要付費以獲取 I2C 從屬設備地址。 I2C 簡單來說,就是一種串行
    發表于 08-14 18:21
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>