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

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

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

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

I2C總線上主設(shè)備和從設(shè)備的連接關(guān)系

ARM與嵌入式 ? 來(lái)源:ARM與嵌入式 ? 2023-06-23 21:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

I2C總線是一種同步、雙向、半雙工的兩線式串行接口總線。這里,半雙工的含義是指在任意給定的時(shí)刻,只有一個(gè)方向上是可以通信的。

I2C總線最早由Philips半導(dǎo)體公司于20世紀(jì)80年代研發(fā)面市。I2C最初的設(shè)計(jì)目標(biāo)是為微處理器/微控制器系統(tǒng)與電視機(jī)外圍芯片之間的連接提供簡(jiǎn)單的方法。 I2C總線由兩條總線組成:串行時(shí)鐘線SCL和串行數(shù)據(jù)線SDA。 SCL線——負(fù)責(zé)產(chǎn)生同步時(shí)鐘脈沖。 SDA線——負(fù)責(zé)在設(shè)備間傳輸串行數(shù)據(jù)。 I2C總線是共享的總線系統(tǒng),因此可以將多個(gè)I2C設(shè)備連接到該系統(tǒng)上。連接到I2C總線上的設(shè)備既可以用作主設(shè)備,也可以用作從設(shè)備。 主設(shè)備負(fù)責(zé)控制通信,通過(guò)對(duì)數(shù)據(jù)傳輸進(jìn)行初始化/終止化,來(lái)發(fā)送數(shù)據(jù)并產(chǎn)生所需的同步時(shí)鐘脈沖。 從設(shè)備則是等待來(lái)自主設(shè)備的命令,并響應(yīng)命令接收。主設(shè)備和從設(shè)備都可以作為發(fā)送設(shè)備或接收設(shè)備。無(wú)論主設(shè)備是作為發(fā)送設(shè)備還是接收設(shè)備,同步時(shí)鐘信號(hào)都只能由主設(shè)備產(chǎn)生。 在相同的總線上,I2C支持多個(gè)主設(shè)備的同時(shí)存在。圖1-1顯示了I2C總線上主設(shè)備和從設(shè)備的連接關(guān)系。 50c8f4b4-11a5-11ee-962d-dac502259ad0.png50e184de-11a5-11ee-962d-dac502259ad0.png 當(dāng)總線空閑時(shí),SDA 和SCL 都處于高電平狀態(tài),當(dāng)主機(jī)要和某個(gè)從機(jī)通訊時(shí),會(huì)先發(fā)送一個(gè)開(kāi)始條件,然后發(fā)送從機(jī)地址和讀寫控制位,接下來(lái)傳輸數(shù)據(jù)(主機(jī)發(fā)送或者接收數(shù)據(jù)),數(shù)據(jù)傳輸結(jié)束時(shí)主機(jī)會(huì)發(fā)送停止條件。傳輸?shù)拿總€(gè)字節(jié)為8 位,高位在前,低位在后。

開(kāi)始條件:SCL 為高電平時(shí),主機(jī)將SDA 拉低,表示數(shù)據(jù)傳輸即將開(kāi)始。

從機(jī)地址:主機(jī)發(fā)送的第一個(gè)字節(jié)為從機(jī)地址,高7 位為地址,最低位為R/W 讀寫控制位,1 表示讀操作,0 表示寫操作。

一般從機(jī)地址有7 位地址模式和10 位地址模式兩種,如果是10 位地址模式,第一個(gè)字節(jié)的頭7 位是11110XX 的組合,其中最后兩位(XX)是10 位地址的兩個(gè)最高位,第二個(gè)字節(jié)為10 位從機(jī)地址的剩下8 位,如下圖所示: 50ff7638-11a5-11ee-962d-dac502259ad0.png

應(yīng)答信號(hào):每傳輸完成一個(gè)字節(jié)的數(shù)據(jù),接收方就需要回復(fù)一個(gè)ACK(acknowledge)。寫數(shù)據(jù)時(shí)由從機(jī)發(fā)送ACK,讀數(shù)據(jù)時(shí)由主機(jī)發(fā)送ACK。當(dāng)主機(jī)讀到最后一個(gè)字節(jié)數(shù)據(jù)時(shí),可發(fā)送NACK(Notacknowledge)然后跟停止條件。

數(shù)據(jù):從機(jī)地址發(fā)送完后可能會(huì)發(fā)送一些指令,依從機(jī)而定,然后開(kāi)始傳輸數(shù)據(jù),由主機(jī)或者從機(jī)發(fā)送,每個(gè)數(shù)據(jù)為8 位,數(shù)據(jù)的字節(jié)數(shù)沒(méi)有限制。

重復(fù)開(kāi)始條件:在一次通信過(guò)程中,主機(jī)可能需要和不同的從機(jī)傳輸數(shù)據(jù)或者需要切換讀寫操作時(shí),主機(jī)可以再發(fā)送一個(gè)開(kāi)始條件。

停止條件:在SDA 為低電平時(shí),主機(jī)將SCL 拉高并保持高電平,然后在將SDA 拉高,表示傳輸結(jié)束。

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

    關(guān)注

    8

    文章

    7256

    瀏覽量

    91823
  • 主機(jī)
    +關(guān)注

    關(guān)注

    0

    文章

    1038

    瀏覽量

    35981
  • I2C總線
    +關(guān)注

    關(guān)注

    8

    文章

    408

    瀏覽量

    62179

原文標(biāo)題:I2C總線

文章出處:【微信號(hào):ARM與嵌入式,微信公眾號(hào):ARM與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    I2C總線物理拓?fù)浣Y(jié)構(gòu)及特征

    I2C總線上的每一個(gè)設(shè)備都可以作為主設(shè)備或者設(shè)備,而且每一個(gè)
    發(fā)表于 09-09 09:25 ?1625次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-i2c設(shè)備通訊編程示例之i2c硬件原理

    同一條i2c總線上,并通過(guò)地址來(lái)區(qū)分不同的設(shè)備。(五)寫時(shí)序下圖完整的展示了主機(jī)向機(jī)寫一個(gè)字節(jié)的時(shí)序圖,需要注意的包括:當(dāng)主設(shè)備通過(guò)
    發(fā)表于 10-28 08:58

    嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-i2c設(shè)備通訊編程示例之i2c硬件原理

    同一條i2c總線上,并通過(guò)地址來(lái)區(qū)分不同的設(shè)備。(五)寫時(shí)序下圖完整的展示了主機(jī)向機(jī)寫一個(gè)字節(jié)的時(shí)序圖,需要注意的包括:當(dāng)主設(shè)備通過(guò)
    發(fā)表于 10-29 16:29

    I2C 總線協(xié)議圖解

    ,SPI和uart為雙工。2I2C總線特征 I2C總線上的每一個(gè)設(shè)備都可以作為主設(shè)備或者
    發(fā)表于 08-01 16:12

    I2C總線是什么

    I2C總線I2C總線(讀做“IC”或“I2C
    發(fā)表于 07-21 09:03

    arduino讀取I2C總線上連接設(shè)備的地址

    這兩天研究了一下I2C總線,發(fā)現(xiàn)有好多I2C設(shè)備的地址并不知道,當(dāng)然有的可以在網(wǎng)上查的到,但是如果遇到用過(guò)的I2C器件,
    發(fā)表于 11-23 16:58 ?11.3w次閱讀

    i2c總線的起始和終止的條件

    盡量選用帶復(fù)位輸人的I2C器件,I2C總線死鎖產(chǎn)生的原因可以發(fā)現(xiàn)I2C
    發(fā)表于 12-06 15:48 ?2.9w次閱讀
    <b class='flag-5'>i2c</b><b class='flag-5'>總線</b>的起始和終止的條件

    樹(shù)莓派怎樣連接多個(gè)I2C設(shè)備

     簡(jiǎn)單。 i2c是一輛公共汽車。總線的目的是與多個(gè)設(shè)備通信。將設(shè)備并行連接到同一i2c
    的頭像 發(fā)表于 11-13 09:27 ?2w次閱讀
    樹(shù)莓派怎樣<b class='flag-5'>連接</b>多個(gè)<b class='flag-5'>I2C</b><b class='flag-5'>設(shè)備</b>

    嵌入式內(nèi)核及驅(qū)動(dòng)開(kāi)發(fā)-09IIC子系統(tǒng)框架使用(I2C協(xié)議和時(shí)序,I2C驅(qū)動(dòng)框架,I2C設(shè)備驅(qū)動(dòng)開(kāi)發(fā),MPU6050硬件連接

    文章目錄I2c協(xié)議和時(shí)序I2c介紹I2c硬件連接I2c總線的信號(hào)
    發(fā)表于 12-06 14:06 ?17次下載
    嵌入式內(nèi)核及驅(qū)動(dòng)開(kāi)發(fā)-09IIC子系統(tǒng)框架使用(<b class='flag-5'>I2C</b>協(xié)議和時(shí)序,<b class='flag-5'>I2C</b>驅(qū)動(dòng)框架,<b class='flag-5'>I2C</b><b class='flag-5'>從</b><b class='flag-5'>設(shè)備</b>驅(qū)動(dòng)開(kāi)發(fā),MPU6050硬件<b class='flag-5'>連接</b>

    傳感器i2c與arduino連接_Nodemcu I2C接口連接Arduino

    數(shù)據(jù)后即刻檢查接收方的確認(rèn)信號(hào),以確定接收方是否成功的接收到數(shù)據(jù)。I2C的工作模式I2C的工作模式分為:主模式(Master mode)和模式(Slave mode),主設(shè)備啟動(dòng)與
    發(fā)表于 12-17 18:01 ?1次下載
    傳感器<b class='flag-5'>i2c</b>與arduino<b class='flag-5'>連接</b>_Nodemcu <b class='flag-5'>I2C</b>接口<b class='flag-5'>連接</b>Arduino

    I2C主設(shè)備設(shè)備的一般通信過(guò)程

    物理I2C接口有兩根雙向線,串行時(shí)鐘線(SCL)和串行數(shù)據(jù)線(SDA)組成,可用于發(fā)送和接收數(shù)據(jù),但是通信都是由主設(shè)備發(fā)起,設(shè)備被動(dòng)響應(yīng),實(shí)現(xiàn)數(shù)據(jù)的傳輸。
    的頭像 發(fā)表于 04-25 14:36 ?1.2w次閱讀

    i2c detect掃描i2c總線上設(shè)備

    i2cdetect:用于掃描i2c 總線上設(shè)備 Usage: i2cdetect [ - y] [ - a] [ - q | - r]
    的頭像 發(fā)表于 07-27 16:16 ?1.3w次閱讀
    <b class='flag-5'>i2c</b> detect掃描<b class='flag-5'>i2c</b><b class='flag-5'>總線上</b>的<b class='flag-5'>設(shè)備</b>

    I2C串行總線協(xié)議是什么?I2C總線有哪些優(yōu)點(diǎn)?

    1982年發(fā)明并推廣,用于連接智能傳感器和存儲(chǔ)器器件,以及控制和監(jiān)控外設(shè)。該協(xié)議是一種主從式通信協(xié)議,允許多個(gè)設(shè)備連接到同一總線上,并在
    的頭像 發(fā)表于 09-12 11:18 ?2368次閱讀

    I2C總線的工作模式介紹

    兩根線組成:數(shù)據(jù)線(SDA)和時(shí)鐘線(SCL)。數(shù)據(jù)線負(fù)責(zé)傳輸數(shù)據(jù),而時(shí)鐘線則用于同步數(shù)據(jù)傳輸。I2C總線是全雙工的,意味著數(shù)據(jù)可以在兩個(gè)方向上傳輸。它支持多個(gè)主設(shè)備
    的頭像 發(fā)表于 01-17 15:32 ?974次閱讀

    I2C總線與Arduino的接口示例

    基礎(chǔ) I2C總線由兩條線組成:數(shù)據(jù)線(SDA)和時(shí)鐘線(SCL)。SDA用于傳輸數(shù)據(jù),而SCL用于同步數(shù)據(jù)傳輸。I2C設(shè)備可以是主設(shè)備
    的頭像 發(fā)表于 01-17 15:34 ?1592次閱讀