www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 模擬 > 模擬技術(shù)
[導(dǎo)讀]在電子設(shè)計(jì)開(kāi)發(fā)中I2C大家已經(jīng)很熟悉了,每一種電子產(chǎn)品小到電子開(kāi)關(guān),大到衛(wèi)星通信都會(huì)利用的I2C總線。據(jù)統(tǒng)計(jì)I2C在電子產(chǎn)品中占據(jù)了93%的份額,幾乎任何一種電路都要使用。

在電子設(shè)計(jì)開(kāi)發(fā)中I2C大家已經(jīng)很熟悉了,每一種電子產(chǎn)品小到電子開(kāi)關(guān),大到衛(wèi)星通信都會(huì)利用的I2C總線。據(jù)統(tǒng)計(jì)I2C在電子產(chǎn)品中占據(jù)了93%的份額,幾乎任何一種電路都要使用。

I2C是由PHILIPS公司在1980年開(kāi)發(fā)的兩線式串行總線,至今已經(jīng)發(fā)展30多年的歷史了。古老的電子產(chǎn)品中就已經(jīng)在使用I2C總線了。I2C總線在所有總線中是最簡(jiǎn)單,最穩(wěn)定的一種,由于發(fā)展歷史久遠(yuǎn),所以I2C總線出現(xiàn)了多種版本。但是萬(wàn)變不離其中,有的廠商甚至在原有I2C總線的基礎(chǔ)上,自己改變了總線時(shí)序,成為獨(dú)有的I2C。但是基本原理不變。我遇到過(guò)很多人在問(wèn)我,自己的I2C程序明明已經(jīng)調(diào)試好,可換了個(gè)芯片就通信失敗了,不能讀取數(shù)據(jù)了。都是I2C的元器件,只是芯片廠家不同。在這里我告訴大家,這總線歷史悠久,各種版本的要有幾十種甚至幾百種了,所有版本的通信格式,協(xié)議都一樣,只是時(shí)間不同了,因?yàn)橛械男酒瑥S家更改了時(shí)序中的時(shí)鐘周期。所以大家遇到這種問(wèn)題,只需調(diào)整延時(shí),其余不動(dòng)即可,不必不知所措,亂找問(wèn)題。

I2C總線從機(jī)設(shè)備最多支持127個(gè),主要是通過(guò)串行數(shù)據(jù)(SDA)線和串行時(shí)鐘 (SCL)線在連接到總線的器件間傳遞信息。每個(gè)器件都有一個(gè)唯一的地址。

I2C總線有三種數(shù)據(jù)傳輸速度:標(biāo)準(zhǔn),快速模式和高速模式。標(biāo)準(zhǔn)的是100Kbps,快速模式為400Kbps,高速模式支持快至3.4Mbps的速度。所有的與次之傳輸速度的模式都是兼容的。I2C總線支持7位和10位地址空間設(shè)備和在不同電壓下運(yùn)行的設(shè)備。

TTL電平與COMS在I2C這里通用。是相互兼容的。

由于I2C的模式多種多樣,我就給大家講一種常用的7位尋址模式的通信,還有10位模式,大家可以自行找資料去了解,這種10位模式的較少。

總線通信流程大概分為四部分。1.啟動(dòng)—2.數(shù)據(jù)傳輸—3.應(yīng)答—4.結(jié)束。

啟動(dòng)與結(jié)束:

SCL 線是高電平時(shí),SDA 線從高電平向低電平切換,這個(gè)情況表示起始條件;

SCL 線是高電平時(shí),SDA 線由低電平向高電平切換,這個(gè)情況表示停止條件。

數(shù)據(jù)傳輸:

發(fā)送到SDA 線上的每個(gè)字節(jié)必須為8 位,每次傳輸可以發(fā)送的字節(jié)數(shù)量不受限制。每個(gè)字節(jié)后必須跟一個(gè)響應(yīng)位。首先傳輸?shù)氖菙?shù)據(jù)的最高位(MSB),如果從機(jī)要完成一些其他功能后(例如一個(gè)內(nèi)部中斷服務(wù)程序)才能接收或發(fā)送下一個(gè)完整的數(shù)據(jù)字節(jié),可以使時(shí)鐘線SCL 保持低電平,迫使主機(jī)進(jìn)入等待狀態(tài),當(dāng)從機(jī)準(zhǔn)備好接收下一個(gè)數(shù)據(jù)字節(jié)并釋放時(shí)鐘線SCL 后數(shù)據(jù)傳輸繼續(xù)。

SDA仲裁

SDA仲裁

SDA線的仲裁也是基于總線具有線路 "AND "邏輯功能的原則。節(jié)點(diǎn)發(fā)送1位數(shù)據(jù)后,比較總線上呈現(xiàn)的數(shù)據(jù)是否與它發(fā)送的內(nèi)容一致(類(lèi)似于CAN總線的回讀機(jī)制),一致繼續(xù)發(fā)送否則退出競(jìng)爭(zhēng)。SDA線的仲裁可以確保I2C總線系統(tǒng)正常通信,當(dāng)多個(gè)主節(jié)點(diǎn)試圖同時(shí)控制總線時(shí),數(shù)據(jù)不會(huì)丟失??偩€系統(tǒng)通過(guò)仲裁只允許一個(gè)主節(jié)點(diǎn)繼續(xù)占用總線。

仲裁過(guò)程

DATA1和DATA2分別是主節(jié)點(diǎn)發(fā)送給總線的數(shù)據(jù)信號(hào),SDA是總線上呈現(xiàn)的數(shù)據(jù)信號(hào),SCL是總線上呈現(xiàn)的時(shí)鐘信號(hào)。當(dāng)主節(jié)點(diǎn)1和2同時(shí)發(fā)送啟動(dòng)信號(hào)時(shí),兩個(gè)主節(jié)點(diǎn)都發(fā)送高電平信號(hào),這時(shí),總線上的信號(hào)為高電平,兩個(gè)主節(jié)點(diǎn)檢測(cè)到總線上的信號(hào)與自己發(fā)送的信號(hào)相同,繼續(xù)發(fā)送數(shù)據(jù)。在第二個(gè)時(shí)鐘周期,兩個(gè)主節(jié)點(diǎn)都發(fā)送低電平信號(hào),總線上呈現(xiàn)的信號(hào)為低電平,繼續(xù)發(fā)送數(shù)據(jù)。在第3個(gè)時(shí)鐘周期,主節(jié)點(diǎn)1發(fā)送一個(gè)高電平信號(hào),而主節(jié)點(diǎn)2發(fā)送一個(gè)低電平信號(hào),根據(jù)總線的 "AND "線的邏輯功能,總線上的信號(hào)是低電平。這時(shí),主節(jié)點(diǎn)1檢測(cè)到總線上的數(shù)據(jù)與自己發(fā)送的數(shù)據(jù)不同,并斷開(kāi)數(shù)據(jù)的輸出階段,轉(zhuǎn)向從機(jī)接收狀態(tài),這樣主節(jié)點(diǎn)2贏得了總線數(shù)據(jù)沒(méi)有丟失,即總線上的數(shù)據(jù)與主節(jié)點(diǎn)2發(fā)送的數(shù)據(jù)相同,主節(jié)點(diǎn)1轉(zhuǎn)為從節(jié)點(diǎn)后繼續(xù)接收數(shù)據(jù),也沒(méi)有丟失SDA線。因此在仲裁過(guò)程中,數(shù)據(jù)不會(huì)丟失。

小結(jié):SDA仲裁和SCL時(shí)鐘同步處理不是順序進(jìn)行的,而是同時(shí)進(jìn)行的。在實(shí)際使用中,I2C很容易出現(xiàn)死鎖。有兩種常見(jiàn)的情況會(huì)發(fā)生死鎖:

一種情況是,當(dāng)從屬設(shè)備回復(fù)ACK時(shí),主設(shè)備異常復(fù)位。

另一種情況是,當(dāng)從屬設(shè)備回復(fù)的數(shù)據(jù)位為0時(shí),主設(shè)備異常復(fù)位。

這兩種情況的相同點(diǎn)是,當(dāng)主設(shè)備被異常復(fù)位時(shí),SDA處于被從屬設(shè)備拉低的狀態(tài),而SCL在主設(shè)備復(fù)位后處于VOH(空閑狀態(tài))。此時(shí),從設(shè)備將等待主設(shè)備將SCL拉低,以獲取ACK或數(shù)據(jù)位,而主設(shè)備將等待從設(shè)備釋放SDA線。主設(shè)備和從設(shè)備互相等待,在空中互相對(duì)視,進(jìn)入死鎖狀態(tài)。

下面是一些解決死鎖問(wèn)題的常用方法:主設(shè)備檢測(cè)到SDA線后,從設(shè)備就會(huì)釋放SDA線。

主設(shè)備檢測(cè)到SDA被拉低超過(guò)一段時(shí)間后,會(huì)主動(dòng)復(fù)位從設(shè)備釋放SDA。這種方法的前提是,從屬設(shè)備有一個(gè)復(fù)位引腳,MCU可以控制從屬設(shè)備的復(fù)位引腳使其復(fù)位。

在主設(shè)備檢測(cè)到SDA被拉低超過(guò)一段時(shí)間后,它向時(shí)鐘總線推送9個(gè)時(shí)鐘,并占用從屬設(shè)備的ACK位,這樣從屬設(shè)備就會(huì)釋放SDA到一個(gè)VOH。

在主設(shè)備和從設(shè)備之間串聯(lián)一個(gè)I2C緩沖器,它可以自動(dòng)檢測(cè)死鎖情況。當(dāng)檢測(cè)到死鎖時(shí),它將主動(dòng)斷開(kāi)與主設(shè)備的連接,并向從設(shè)備發(fā)送9個(gè)時(shí)鐘。在從屬設(shè)備釋放SDA線后,它將重新與主設(shè)備建立連接。

I2C死鎖問(wèn)題不能從根本上避免,除了由MCU的異常復(fù)位引起的I2C死鎖外,在正常的通信過(guò)程中,從屬設(shè)備也可能異常地拉下SDA而引起死鎖。因此,當(dāng)死鎖發(fā)生時(shí),軟件應(yīng)設(shè)計(jì)成能夠從死鎖中恢復(fù),從而使I2C通信能夠繼續(xù)。

CORPORATE CULTURE 時(shí)鐘拉伸

時(shí)鐘拉伸

什么是I2C時(shí)鐘拉伸?在I2C的主從通信過(guò)程中,總線上的SCL時(shí)鐘總是由主站產(chǎn)生和控制,但如果從站不能跟上主站的速度,I2C協(xié)議規(guī)定從站可以拉低SCL時(shí)鐘線。傳輸會(huì)暫停,直到從機(jī)釋放SCL線,然后繼續(xù)傳輸。

時(shí)鐘拉伸是從屬設(shè)備的一個(gè)可選配置。如果不啟用,從機(jī)不能控制SCL;如果啟用,從機(jī)可以通過(guò)強(qiáng)行將SCL拉低來(lái)降低傳輸速度。在SCL為VOL的期間,主機(jī)只能等待從機(jī)釋放SCL。

CORPORATE CULTURE

重復(fù)啟動(dòng)

有時(shí),主站需要在一次通信中進(jìn)行多次信息交換,如與不同的從站傳輸信息,或切換讀寫(xiě)操作,而又不想在此期間被其他主站干擾,那么可以使用 "重復(fù)啟動(dòng)條件"--在一次通信中,主站可以產(chǎn)生多個(gè)啟動(dòng)條件來(lái)完成多個(gè)信息交換,最后產(chǎn)生一個(gè)停止條件來(lái)結(jié)束整個(gè)通信過(guò)程。由于在此期間沒(méi)有停止條件,所以主站一直占據(jù)著竊聽(tīng)器,而其他主站無(wú)法切換進(jìn)來(lái)。


322290bc-ddf5-11ed-bfe3-dac502259ad0.png

CORPORATE CULTURE

下面是UART、I2c和SPI之間的區(qū)別


322fe4d8-ddf5-11ed-bfe3-dac502259ad0.png

你可能想知道,這三種通信方式中哪一種是最好的?是UART、I2C,還是SPI?

實(shí)際是沒(méi)有最好的通信外設(shè),每個(gè)通信外設(shè)都有自己的優(yōu)點(diǎn)和缺點(diǎn)。

因此,用戶(hù)應(yīng)該選擇最適合他們項(xiàng)目的通信外設(shè)。例如,如果你想要最快的通信外設(shè),SPI將是最理想的。另一方面,如果用戶(hù)想連接多個(gè)設(shè)備而又不太復(fù)雜,I2C將是最理想的,因?yàn)樗梢赃B接多達(dá)127個(gè)設(shè)備,而且易于管理。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉