小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IIC總線(xiàn)協(xié)議

 yanDreams 2015-03-25

IIC總線(xiàn)的協(xié)議:

處理器和芯片間的通信可以形象的比喻成兩個(gè)人講話(huà):1、你說(shuō)的別人得能聽(tīng)懂:雙方約定信號(hào)的協(xié)議。2、你的語(yǔ)速別人得能接受:雙方滿(mǎn)足時(shí)序要求。

看IIC協(xié)議先:兩條線(xiàn)可以?huà)於鄠€(gè)設(shè)備。IIC設(shè)備(稍微有點(diǎn)智能的)里有個(gè)固化的地址。只有在兩條線(xiàn)上傳輸?shù)闹档扔谖遥↖IC設(shè)備)的地址時(shí),我才作出響應(yīng)。


開(kāi)始信號(hào):處理器讓SCL時(shí)鐘保持高電平,然后讓SDA數(shù)據(jù)信號(hào)由高變低就表示一個(gè)開(kāi)始信號(hào)。同時(shí)IIC總線(xiàn)上的設(shè)備檢測(cè)到這個(gè)開(kāi)始信號(hào)它就知道處理器要發(fā)送數(shù)據(jù)了。

停止信號(hào):處理器讓SCL時(shí)鐘保持高電平,然后讓SDA數(shù)據(jù)信號(hào)由低變高就表示一個(gè)停止信號(hào)。同時(shí)IIC總線(xiàn)上的設(shè)備檢測(cè)到這個(gè)停止信號(hào)它就知道處理器已經(jīng)結(jié)束了數(shù)據(jù)傳輸,我們就可以各忙各個(gè)的了,如休眠等。

看數(shù)據(jù)怎么傳:SDA上傳輸?shù)臄?shù)據(jù)必須在SCL為高電平期間保持穩(wěn)定:因?yàn)橥饨覫IC設(shè)備在SCL為高電平的期間采集數(shù)據(jù)方知SDA是高或低電平。SDA上的數(shù)據(jù)只能在SCL為低電平期間翻轉(zhuǎn)變化。

響應(yīng)信號(hào)(ACK):處理器把數(shù)據(jù)發(fā)給外接IIC設(shè)備,如何知道IIC設(shè)備數(shù)據(jù)已經(jīng)收到呢?就需要外接IIC設(shè)備回應(yīng)一個(gè)信號(hào)給處理器。處理器發(fā)完8bit數(shù)據(jù)后就不再驅(qū)動(dòng)總線(xiàn)了(SDA引腳變輸入),而SDA和SDL硬件設(shè)計(jì)時(shí)都有上拉電阻,所以這時(shí)候SDA變成高電平。那么在第8個(gè)數(shù)據(jù)位,如果外接IIC設(shè)備能收到信號(hào)的話(huà)接著在第9個(gè)周期把SDA拉低,那么處理器檢測(cè)到SDA拉低就能知道外接IIC設(shè)備數(shù)據(jù)已經(jīng)收到。

IIC數(shù)據(jù)從最高位開(kāi)始傳輸。


再進(jìn)一步說(shuō):IIC總線(xiàn)是允許掛載多個(gè)設(shè)備的,如何訪(fǎng)問(wèn)其中一個(gè)設(shè)備而不影響其他設(shè)備呢?

7bit表示從地址,那么可以?huà)燧d的從設(shè)備數(shù)是2的7次方128個(gè)。處理器想寫(xiě)的話(huà):先發(fā)送起始位,再發(fā)一個(gè)8bit數(shù)據(jù):前7bit表示從地址,第8bit表示讀或者寫(xiě)。0write是處理器往IIC從設(shè)備發(fā),1read是IIC從設(shè)備往處理器發(fā)。第9個(gè)時(shí)鐘周期回復(fù)響應(yīng)信號(hào)。

下面就以AT24Cxx為例詳細(xì)說(shuō)明一下:

首先發(fā)出一個(gè)start信號(hào),從設(shè)備地址,R/W(0,寫(xiě)),回應(yīng)ACK表示有這個(gè)從設(shè)備存在。這時(shí)候是處理器從指定的從設(shè)備讀數(shù)據(jù)的從設(shè)備里8bit存儲(chǔ)地址的指定。所以這里R/W是0為寫(xiě)。ACK回應(yīng)有這個(gè)設(shè)備的話(huà),處理器把要訪(fǎng)問(wèn)的從設(shè)備里的8bit存儲(chǔ)地址寫(xiě)好。ACK對(duì)方回應(yīng)。繼續(xù)一個(gè)start信號(hào)+從設(shè)備地址,最低位是高電平表示讀數(shù)據(jù),回應(yīng)ACK表示有這個(gè)從設(shè)備存在。在讀數(shù)據(jù)的時(shí)候,每發(fā)出一個(gè)時(shí)鐘,處理器會(huì)SDA上的數(shù)據(jù)存起來(lái)。那么發(fā)出8個(gè)時(shí)鐘后處理器就能得到8位的數(shù)據(jù)。這時(shí)候若想連續(xù)讀就不斷回應(yīng)ACK信號(hào)否則就發(fā)出停止信號(hào)。

讀的過(guò)程:start信號(hào),從設(shè)備地址,寫(xiě),待讀取存儲(chǔ)地址,再一個(gè)start信號(hào),從設(shè)備地址,讀,8個(gè)時(shí)鐘,從設(shè)備就把對(duì)應(yīng)的數(shù)據(jù)反饋給處理器。

start信號(hào),哪一個(gè)設(shè)備地址,寫(xiě),緊跟連續(xù)兩個(gè)字節(jié)的數(shù)據(jù):要寫(xiě)的地址,對(duì)方收到8bit地址后回應(yīng)ACK,再8bit數(shù)據(jù)發(fā)給從設(shè)備,對(duì)方收到8bit數(shù)據(jù)后回應(yīng)ACK,處理器寫(xiě)完后發(fā)送停止信號(hào)。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多