什么是I2C通信
(1)SCL:時(shí)鐘線,傳輸CLK,一般是I2C主設(shè)備向從設(shè)備提供時(shí)鐘的通道。
(2)SDA:數(shù)據(jù)線,通信數(shù)據(jù)都通過(guò)SDA線傳輸。
10.1.2通信特征:串行、同步、非差分、低速
(1)I2C屬于串行通信,所有數(shù)據(jù)以位為單位在SDA線上串行傳輸。
(2)同步通信就是通信雙方工作在同一個(gè)時(shí)鐘下,一般是通信的A方通過(guò)一根CLK信號(hào)線傳輸A自己的時(shí)鐘給B,B工作在A傳輸?shù)臅r(shí)鐘下。所以同步通信的顯著特征就是:通信線中有CLK。
(3)非差分:因?yàn)镮2C通信速率不高,而且通信雙方距離很近,所以使用電平信號(hào)通信。
(4)低速率:I2C一般是用在同一個(gè)板子上的2個(gè)IC之間的通信,而且用來(lái)傳輸?shù)臄?shù)據(jù)量不大,所以本身通信速率很低(一般幾百KHz,不同的I2C芯片的通信速率可能不同,具體在編程時(shí)要看自己所使用的設(shè)備允許的I2C通信最高速率,不能超過(guò)這個(gè)速率)。
10.1.3突出特征1:主設(shè)備 + 從設(shè)備
(1)I2C通信的時(shí)候,通信雙方地位是不對(duì)等的,而是分主設(shè)備和從設(shè)備。通信由主設(shè)備發(fā)起,由主設(shè)備主導(dǎo),從設(shè)備只是按照I2C協(xié)議被動(dòng)的接受主設(shè)備的通信,并及時(shí)響應(yīng)。
(2)誰(shuí)是主設(shè)備、誰(shuí)是從設(shè)備是由通信雙方來(lái)定的(I2C協(xié)議并無(wú)規(guī)定),一般來(lái)說(shuō)一個(gè)芯片可以只能做主設(shè)備、也可以只能做從設(shè)備、也可以既能當(dāng)主設(shè)備又能當(dāng)從設(shè)備(軟件配置)。
10.1.4突出特征2:可以多個(gè)設(shè)備掛在一條總線上(從設(shè)備地址)
(1)I2C通信可以一對(duì)一,也可以多對(duì)一。
(2)主設(shè)備來(lái)負(fù)責(zé)調(diào)度總線,決定某一時(shí)間和哪個(gè)從設(shè)備通信。注意;同一時(shí)間內(nèi),I2C總線上只能傳輸一對(duì)設(shè)備的通信信息,所以同一時(shí)間只能有一個(gè)從設(shè)備和主設(shè)備通信,其他設(shè)備處于“冬眠”狀態(tài),不能出來(lái)?yè)v亂,否則通信就亂套了。
(3)每一個(gè)I2C從設(shè)備在通信中都有一個(gè)I2C從設(shè)備地址,這個(gè)設(shè)備地址是從設(shè)備本身固有的屬性,然后通信時(shí)主設(shè)備需要知道自己將要通信的那個(gè)設(shè)備的地址,然后在通信中通過(guò)地址來(lái)甄別是不是自己要找的那個(gè)從設(shè)備。(這個(gè)地址是一個(gè)電路板上唯一的,不是全球唯一的)
主要用途:SoC和周邊外設(shè)之間的通信(典型的如EEPROM、電容觸摸IC、各種sensor等)
嵌入式物聯(lián)網(wǎng)的學(xué)習(xí)之路非常漫長(zhǎng),不少人因?yàn)閷W(xué)習(xí)路線不對(duì)或者學(xué)習(xí)內(nèi)容不夠?qū)I(yè)而錯(cuò)失高薪offer。不過(guò)別擔(dān)心,我為大家整理了一份150多G的學(xué)習(xí)資源,基本上涵蓋了嵌入式物聯(lián)網(wǎng)學(xué)習(xí)的所有內(nèi)容。在評(píng)論區(qū)私信“嵌入式”0元領(lǐng)取學(xué)習(xí)資源,讓你的學(xué)習(xí)之路更加順暢!記得點(diǎn)贊、關(guān)注、收藏、轉(zhuǎn)發(fā)哦!
- 贊