国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

I2C總線的通信原理和協議

GReq_mcu168 ? 來源:strongerHuang ? 作者:strongerHuang ? 2022-02-14 15:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

掌握I2C算是最基本的技能,初入職場的人有必要系統學習一下。

一、I2C簡史

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

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

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

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

I2C版本歷史:

I2C總線的通信原理和協議

額外說一下SMBus:

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

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

二、I2C基礎內容

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

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

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

I2C總線的通信原理和協議

1.I2C兩線信號

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

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

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

I2C總線的通信原理和協議

2.信號電平

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

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

三、I2C協議

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

1.收發基本原理

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

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

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

2.基本協議:7/10位地址

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

7位地址:

I2C總線的通信原理和協議

10位地址:

I2C總線的通信原理和協議

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

3.開始和停止

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

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

I2C總線的通信原理和協議

4.應答(ACK)和非應答(ACK)

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

I2C總線的通信原理和協議

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

5.更多協議內容

I2C協議手冊地址

原文標題:I2C很簡單,但很多人都不了解它的通信原理和協議

文章出處:【微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅

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

    關注

    18

    文章

    6389

    瀏覽量

    140058
  • 總線
    +關注

    關注

    10

    文章

    3040

    瀏覽量

    91666
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1556

    瀏覽量

    131243

原文標題:I2C很簡單,但很多人都不了解它的通信原理和協議

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    I2C總線-通信線纜長度的影響及改進措施

    I2C總線確實不適合遠距離通信,尤其是需要使用線纜與I2C接口器件進行通信,這里的“不適合”并不是說不可以,這也是本文的重點。一般使用
    發表于 01-21 06:03

    I2C 為什么只要兩根線就能搞定通信

    到目前為止,我們已經討論了SPI通信和UART通信的基礎知識,現在讓我們討論本系列的最后一個協議,即集成電路間協議I2C)。如果您曾經構建
    的頭像 發表于 01-04 09:14 ?1646次閱讀
    <b class='flag-5'>I2C</b> 為什么只要兩根線就能搞定<b class='flag-5'>通信</b>?

    P82B715:I2C總線擴展的得力助手

    P82B715:I2C總線擴展的得力助手 在電子設計領域,I2C總線是一種常用的通信協議,但它的總線
    的頭像 發表于 12-26 10:20 ?710次閱讀

    基于FPGA的I2C通信協議設計

    I2C(Inter-Integrated Circuit)是一種由飛利浦半導體(現為恩智浦半導體)在1980年代初開發的同步、串行、半雙工的總線通信協議。主要用于近距離(同一塊印刷電路板(PCB
    的頭像 發表于 12-26 09:44 ?6138次閱讀
    基于FPGA的<b class='flag-5'>I2C</b><b class='flag-5'>通信協議</b>設計

    I2C總線協議

    I2C 總線使用兩根信號線(數據線 SDA 和時鐘線 SCL)在設備間傳輸數據。SCL 為單向時鐘線,固定由主機驅動。SDA 為雙向數據線,在數據傳輸過程中由收發兩端分時驅動。 I2C 總線
    發表于 12-15 08:07

    I2C的缺點介紹

    影響信號完整性并導致通信錯誤。上拉電阻值的計算取決于總線電容、所需上升時間和電源電壓等因素。 尋址限制: I2C 協議支持有限數量的唯一地址,通常為 7 或 10 位長,這限制了可連接
    發表于 11-27 06:10

    SPI、I2CI2S、UART:通信協議解釋

    ? ? ? ? 在嵌入式開發中,最常用的幾種通信接口無非就是SPI、I2CI2S、UART。名字看起來差不多,但應用場景和特性卻大不相同。為什么都叫串行通信,結構卻不一樣?為什么有的
    的頭像 發表于 11-18 10:53 ?544次閱讀

    SPI、I2CI2S、UART:通信協議對比表

    在嵌入式開發中,最常用的幾種通信接口無非就是SPI、I2CI2S、UART。名字看起來差不多,但應用場景和特性卻大不相同。很多初學者容易混淆:為什么都叫串行通信,結構卻不一樣?為什么
    的頭像 發表于 11-17 10:53 ?1742次閱讀
    SPI、<b class='flag-5'>I2C</b>、<b class='flag-5'>I2</b>S、UART:<b class='flag-5'>通信協議</b>對比表

    深入剖析I2C協議

    I2C是由Philips開發的簡單的雙向兩線總線,在深入淺出理解SPI協議中,我們區分了單工,半雙工,全雙工協議數據流向的區別,根據特征,I2C
    的頭像 發表于 08-21 15:10 ?3675次閱讀
    深入剖析<b class='flag-5'>I2C</b><b class='flag-5'>協議</b>

    I2C總線通信,為什么要進行電氣隔離?

    I2C總線采用雙向二線制,支持多主機多從機通信,具備高可靠性、抗干擾能力強,廣泛應用于嵌入式系統中。
    的頭像 發表于 08-11 11:04 ?2512次閱讀
    <b class='flag-5'>I2C</b><b class='flag-5'>總線</b><b class='flag-5'>通信</b>,為什么要進行電氣隔離?

    第十八章 I2C通信測試

    本章介紹了I2C協議,其物理層用SDA和SCL雙線,支持多設備:協議層含起始/停止信號、應答機制等。還講解W55MH32的I2C外設及初始化,并進行了
    的頭像 發表于 06-19 17:07 ?1314次閱讀
    第十八章 <b class='flag-5'>I2C</b><b class='flag-5'>通信</b>測試

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-I2C設備驅動之Linux下的I2C驅動簡介

    在Linux下,I2C(Inter-Integrated Circuit)驅動是用于支持I2C總線協議的驅動程序。I2C是一種串行
    發表于 04-15 10:39

    飛凌嵌入式ElfBoard ELF 1板卡-I2C設備驅動之Linux下的I2C驅動簡介

    在Linux下,I2C(Inter-Integrated Circuit)驅動是用于支持I2C總線協議的驅動程序。I2C是一種串行
    發表于 04-15 10:19

    是德DSOX4034A示波器I2C總線信號分析

    在現代電子設計與調試中,I2C(Inter-Integrated Circuit)總線作為一種廣泛應用的串行通信協議,因其簡單性、靈活性和低功耗特性,成為許多嵌入式系統和電子設備中不可或缺的
    的頭像 發表于 03-19 13:47 ?1227次閱讀
    是德DSOX4034A示波器<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>信號分析

    I2C總線復用

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