Data and ACK/NACK
正常情況
主接收機(jī)必須向從機(jī)發(fā)送傳輸結(jié)束的信號(hào)。
異常情況
-
發(fā)送到總線上的地址,卻沒(méi)有匹配的從機(jī)
-
從機(jī)處于 busy 狀態(tài)。
-
在傳輸過(guò)程中,從機(jī)獲取其不理解的數(shù)據(jù)或命令。
-
在傳輸過(guò)程中,從機(jī)無(wú)法再接收任何數(shù)據(jù)字節(jié)。
主機(jī)可以生成停止條件以中止傳輸,或生成重復(fù)啟動(dòng)條件以啟動(dòng)新傳輸。
Clock stretching 時(shí)鐘延展
-
時(shí)鐘延展:通過(guò)將 SCL 線保持在低電平來(lái)暫停傳輸。在 SCL 再次拉高之前,傳輸無(wú)法進(jìn)行。
-
從機(jī)通過(guò)將 SCL 線拉低,強(qiáng)制主機(jī)進(jìn)入等待狀態(tài)。
-
時(shí)鐘延展功能是可選的,不是必選的
-
時(shí)鐘延展導(dǎo)致需要更多時(shí)間來(lái)存儲(chǔ)接收到的字節(jié)或準(zhǔn)備另一個(gè)要傳輸?shù)淖止?jié)
-
通過(guò)延長(zhǎng)每個(gè)時(shí)鐘低電平周期來(lái)降低總線時(shí)鐘。任何主機(jī)的速度都與該設(shè)備的內(nèi)部運(yùn)行速度相適應(yīng)。
-
在 Hs 模式下,此握手功能只能在字節(jié)級(jí)別使用
I2C 主設(shè)備始終控制著時(shí)鐘線 SCL,不論是往設(shè)備寫(xiě)還是從設(shè)備讀。一般情況下,如果操作對(duì)象是 EEPROM 或者其他簡(jiǎn)單設(shè)備而言,無(wú)所謂,但是,如果從設(shè)備是處理器,在接到主機(jī)命令后要去處理一些運(yùn)算然后得出結(jié)果返回給主機(jī)。這個(gè)時(shí)候可能造成來(lái)不及處理。怎么辦?這時(shí),從設(shè)備會(huì)主動(dòng)控制時(shí)鐘線把它拉低!直到數(shù)據(jù)準(zhǔn)備好之后再釋放時(shí)鐘線,把控制權(quán)交還給 MASTER。這也是 I2C 通信系統(tǒng)中,從機(jī)唯一能控制總線的時(shí)候!
關(guān)鍵是很多 I2C 主機(jī)不支持 clock stretching 功能,所以,無(wú)法和帶有 clock stretching 功能的從機(jī)通信!所以,各位在選擇主機(jī)器件之前,必須要注意這一點(diǎn),不然整個(gè)設(shè)計(jì)方案可能報(bào)廢,影響很大。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
相關(guān)推薦
我們想使用 S32K148 LPI2C 配置 ADI A2B 網(wǎng)絡(luò),需要 I2C master 支持時(shí)鐘延展功能。S32K148 LPI
發(fā)表于 04-06 06:36
I2C介紹 I2C總線是兩線式串行總線。 I2C總線最主要的優(yōu)點(diǎn)是其簡(jiǎn)單性和有效性,支持多主控(multimastering)。&nb
發(fā)表于 08-13 17:29
?0次下載
I2C總線器件應(yīng)用第一節(jié) I2C總線器件應(yīng)用概述I2C總線工作原理I2C總線系統(tǒng)結(jié)構(gòu)I2C總線系統(tǒng)結(jié)構(gòu)如圖7-1所示。其中,SCL是
發(fā)表于 08-13 17:34
?0次下載
i2c總線技術(shù):2 I2C 總線使設(shè)計(jì)人員和廠商都得益.. 32.1 設(shè)計(jì)人員的得益.. 42.2 廠商的得益. 53 介紹I2C 總線規(guī)范
發(fā)表于 03-25 08:58
?62次下載
i2c總線的特點(diǎn):2 I2C 總線使設(shè)計(jì)人員和廠商都得益.. 3
2.1 設(shè)計(jì)人員的得益.. 4
2.2 廠商的得益. 5
3 介紹
發(fā)表于 08-05 09:05
?26次下載
I2C總線規(guī)范與I2C器件C51讀寫(xiě)程序:本文簡(jiǎn)要介紹了I2C總線,并給出了I2C器件的
發(fā)表于 08-22 17:51
?93次下載
I2C Guid I2C指南
The I2C bus is used in a wide rangeof applications because it is simpleand
發(fā)表于 04-23 13:55
?36次下載
摘要:介紹了I2C總線系統(tǒng)的電路結(jié)構(gòu)特點(diǎn)和功能.關(guān)鍵詞:I2C總線;串行;數(shù)據(jù);時(shí)鐘;控制器;接口;存儲(chǔ)器
發(fā)表于 05-29 10:51
?25次下載
介紹I2C總線的基本概念和工作原理,敘述I2C總線擴(kuò)展器件ZLG7290的功能特點(diǎn)。在以S3C2410為微控制器,ZLG7290為
發(fā)表于 12-29 16:52
?40次下載
I2C 總線實(shí)驗(yàn)(實(shí)時(shí)時(shí)鐘、EEPROM 和ZLG7290 的實(shí)驗(yàn))
一. 實(shí)驗(yàn)?zāi)康募由钣脩魧?duì)I2C 總線的理解,熟悉I2C 器件的使用
發(fā)表于 09-22 16:58
?4307次閱讀
STM32時(shí)鐘延展導(dǎo)致 I2C 通信不可靠
發(fā)表于 12-04 15:15
?0次下載
單片機(jī)i2c總線操作;單片機(jī)i2c總線操作;單片機(jī)i2c總線操作;
發(fā)表于 05-17 11:09
?35次下載
配置;而軟件I2C是沒(méi)有寄存器這個(gè)概念的。 軟件I2C一般是使用GPIO管腳,用軟件控制SCL,SDA線輸出高低電平,模擬i2c協(xié)議的時(shí)序。例如下面這段
發(fā)表于 12-28 19:14
?81次下載
i.MX RT1010的I2C Slave時(shí)鐘延展功能小記
發(fā)表于 09-27 16:22
?1567次閱讀
i2c采樣是上升沿嗎?? I2C采樣是指在I2C總線上對(duì)數(shù)據(jù)進(jìn)行采樣。在I2C總線上,數(shù)據(jù)的傳輸是通過(guò)2條線傳遞。一條是
發(fā)表于 09-19 17:16
?2827次閱讀
評(píng)論