一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內(nèi)不再提示

I2C總線的通信原理和協(xié)議

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

掃碼添加小助手

加入工程師交流群

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

掌握I2C算是最基本的技能,初入職場的人有必要系統(tǒng)學(xué)習(xí)一下。

一、I2C簡史

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

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

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

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

I2C版本歷史:

I2C總線的通信原理和協(xié)議

額外說一下SMBus:

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

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

二、I2C基礎(chǔ)內(nèi)容

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

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

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

I2C總線的通信原理和協(xié)議

1.I2C兩線信號

每個I2C總線由兩個信號組成:SCL時鐘信號,SDA數(shù)據(jù)信號。時鐘信號總是由當前總線主機產(chǎn)生。

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

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

I2C總線的通信原理和協(xié)議

2.信號電平

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

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

三、I2C協(xié)議

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

1.收發(fā)基本原理

I2C的兩個總線:SCL時鐘信號,SDA數(shù)據(jù)信號。SCL由主機產(chǎn)生,SDA由主機或者從機產(chǎn)生。

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

這樣,你就會發(fā)現(xiàn),SDA上的信號(數(shù)據(jù)),有時候是主機的,有時候是從機的。

2.基本協(xié)議:7/10位地址

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

7位地址:

I2C總線的通信原理和協(xié)議

10位地址:

I2C總線的通信原理和協(xié)議

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

3.開始和停止

SDA數(shù)據(jù)線由高 -> 低 為總線開始條件;

SDA數(shù)據(jù)線由低 -> 高 為總線結(jié)束條件;

I2C總線的通信原理和協(xié)議

4.應(yīng)答(ACK)和非應(yīng)答(ACK)

應(yīng)答和非應(yīng)答發(fā)生在每個字節(jié)之后,是由接收方向發(fā)送方發(fā)出確認信號,表明“數(shù)據(jù)”已成功接收,并且可以繼續(xù)發(fā)送下一字節(jié)數(shù)據(jù)。

I2C總線的通信原理和協(xié)議

應(yīng)答有很多種情況,初學(xué)者可以參考協(xié)議手冊,里面有詳細講述。

5.更多協(xié)議內(nèi)容

I2C協(xié)議手冊地址

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

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

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6196

    瀏覽量

    137630
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2958

    瀏覽量

    89572
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1539

    瀏覽量

    127483

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    I2C總線復(fù)用

    帝晶智慧屏I2C總線復(fù)用
    的頭像 發(fā)表于 03-11 17:20 ?1373次閱讀

    I2C總線通信原理 如何設(shè)計I2C總線電路

    I2C總線通信原理 I2C(Inter-Integrated Circuit)總線是一種用于集成電路之間進行
    的頭像 發(fā)表于 01-31 15:01 ?1048次閱讀

    基于I2C總線的智能家居應(yīng)用

    隨著科技的飛速發(fā)展,智能家居系統(tǒng)已經(jīng)成為現(xiàn)代生活的一個重要組成部分。I2C(Inter-Integrated Circuit)總線是一種串行通信協(xié)議,廣泛應(yīng)用于微控制器和各種傳感器之間,因其簡單
    的頭像 發(fā)表于 01-17 16:21 ?536次閱讀

    I2C總線的優(yōu)缺點分析

    I2C總線作為一種廣泛使用的串行通信協(xié)議,以其簡單性和高效性在嵌入式系統(tǒng)中占據(jù)著重要地位。 I2C總線的優(yōu)點 1. 簡單性和低成本
    的頭像 發(fā)表于 01-17 15:50 ?1087次閱讀

    I2C總線數(shù)據(jù)包結(jié)構(gòu)詳解

    I2C(Inter-Integrated Circuit)總線是一種用于連接微控制器和各種外圍設(shè)備的通信協(xié)議。它使用兩條線:串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL),實現(xiàn)了設(shè)備之間的簡單、高效
    的頭像 發(fā)表于 01-17 15:46 ?760次閱讀

    如何選擇I2C總線拉電阻

    I2C總線是一種廣泛使用的串行通信協(xié)議,它允許多個設(shè)備通過兩條線(數(shù)據(jù)線SDA和時鐘線SCL)進行通信。為了確保數(shù)據(jù)信號的穩(wěn)定性和減少反射,I2C
    的頭像 發(fā)表于 01-17 15:43 ?577次閱讀

    I2C總線與Arduino的接口示例

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

    I2C總線的工作模式介紹

    在現(xiàn)代電子系統(tǒng)中,I2C總線作為一種多主機、多從機的串行通信協(xié)議,扮演著至關(guān)重要的角色。它允許多個設(shè)備共享同一總線,進行數(shù)據(jù)傳輸,從而簡化了系統(tǒng)設(shè)計并降低了成本。
    的頭像 發(fā)表于 01-17 15:32 ?926次閱讀

    I2C總線協(xié)議詳細解析

    1. I2C總線簡介 I2C總線由Philips Semiconductor(現(xiàn)為NXP Semiconductors)在1980年代初期開發(fā)。它是一種多主機
    的頭像 發(fā)表于 01-17 15:22 ?839次閱讀

    I2C總線故障排除技巧

    I2C總線是一種廣泛使用的串行通信協(xié)議,它允許多個設(shè)備在兩條線上(數(shù)據(jù)線SDA和時鐘線SCL)進行通信。由于其簡單性和靈活性,I2C
    的頭像 發(fā)表于 01-17 15:20 ?2180次閱讀

    I2C總線與單片機的連接

    在現(xiàn)代電子系統(tǒng)中,單片機(MCU)是核心控制單元,而I2C總線作為一種多主機、多從機的串行通信協(xié)議,因其簡單、高效和節(jié)省引腳的特性而被廣泛應(yīng)用于各種電子設(shè)備中。 I2C
    的頭像 發(fā)表于 01-17 15:18 ?1118次閱讀

    I2C總線設(shè)備地址設(shè)置方法

    I2C總線是一種廣泛使用的串行通信協(xié)議,它允許多個設(shè)備在兩條線上(數(shù)據(jù)線SDA和時鐘線SCL)進行通信。每個設(shè)備都有一個唯一的地址,以確保數(shù)據(jù)能夠正確地發(fā)送到目標設(shè)備。
    的頭像 發(fā)表于 01-17 15:17 ?3929次閱讀

    I2C總線應(yīng)用實例分析

    在現(xiàn)代電子系統(tǒng)中,I2C總線因其簡單、靈活和高效的特點而被廣泛應(yīng)用于各種設(shè)備之間的通信。 I2C總線概述
    的頭像 發(fā)表于 01-17 15:09 ?698次閱讀

    I2C總線與SPI總線的比較

    在現(xiàn)代電子系統(tǒng)中,微控制器與各種外設(shè)之間的通信是必不可少的。I2C和SPI是兩種流行的串行通信協(xié)議,它們各自具有獨特的特點和應(yīng)用場景。 I2C總線
    的頭像 發(fā)表于 01-17 15:08 ?892次閱讀

    簡單認識I2C通信協(xié)議

    I2C(Inter-Integrated Circuit)通信協(xié)議是由飛利浦公司(現(xiàn)為恩智浦半導(dǎo)體)開發(fā)的一種簡單、雙向二線制同步串行總線協(xié)議。自1982年發(fā)布以來,
    的頭像 發(fā)表于 07-25 18:06 ?2538次閱讀