1????I2c 內(nèi)部集成總線(串行)(同步半雙工)
版級之間硬件相互通信
SDK時鐘線
SDA數(shù)據(jù)線
主設(shè)備發(fā)時鐘
從設(shè)備接收時鐘? ? 一主多從? ?多主多從? ? (剛進(jìn)入 上拉電阻拉高 從設(shè)備(空閑狀態(tài)))
傳輸協(xié)議:
SCL? 高電平? ? ? ? ? ? ? ?SCL? 高電平
SDA? 下降沿????????????????SDA? 上升沿
校驗(yàn)
ACK? ? ? ? ?應(yīng)答? (低電平狀態(tài))拉低
NACK? ? ?非應(yīng)答? ?拉高 或者電平?jīng)]變
主設(shè)備傳輸方向
主——》從????SCK? ?H
? ? ? ? ? ? ? ? ? ? ? ? SDA? ?H——設(shè)備號+方向+應(yīng)答+8bit(有效數(shù)據(jù))(地址加數(shù)據(jù))+校驗(yàn)
設(shè)備號
{?
?7bit? ?占一個字節(jié)(常用)128+1bit方向|0主向從發(fā)|1從向主發(fā)
10bit二個字節(jié)
}
2
在時鐘線低電平進(jìn)行數(shù)據(jù)線的電平變換
在時鐘線高電平鎖存
低位在前LSB????????????1 000 0000
高位在前MSB? ? ? ? ? ? 0000 000 1
設(shè)備號(設(shè)備地址)
設(shè)備內(nèi)地址
ROM(只讀)
PROM? ? EPROM(擦寫)????
RAM(內(nèi)存)讀寫? 隨機(jī)性存儲
SRAM (靜態(tài)存儲)上電不變? 上電穩(wěn)定 造價高
DRAM(動態(tài)存儲)多電容(存電放電)定時刷新
SDRAM->DDR4(內(nèi)存條)
E2PRM(EEPRM)電信號擦寫
儲存量小 造價高 掉電不丟失
flash(閃存)
nor flash——》ROM分支
nand flash-》類似磁盤(物理磨損)塊設(shè)備(存儲設(shè)備)
讀-》改-》寫
端序?
大端序? 高字節(jié)存低地址?
小端序 低字節(jié)存高地址?
E2PROM????256byte
1 寫? ?起始+????設(shè)備號????+傳輸方向? ?+ 應(yīng)答+? ?從設(shè)備內(nèi)地址+? 應(yīng)答+????多個數(shù)據(jù)+結(jié)束
? ? ? ? ? ? ? ? ? ? ? ? ? ?7bit? ? ? ? ? ? 1bit(0)? 1bit? ? ? ?8bit?????????????????????7bit? ? ? ? ?9bit?
1 讀? ?起始+????設(shè)備號????+傳輸方向? ?+ 應(yīng)答+? ?從設(shè)備內(nèi)地址+? 應(yīng)答
? ? ? ? ? ? ? ? ? ? ? ? ? ?7bit? ? ? ? ? ? 1bit(0)? 1bit? ? ? ?8bit?????????????????????7bit??
起始+????設(shè)備號????+傳輸方向 + 應(yīng)答+ 從設(shè)備內(nèi)地址+? 應(yīng)答+ 多個數(shù)據(jù)+結(jié)束(數(shù)據(jù)+非應(yīng)答)+結(jié)束位
? ? ? ? ? ? ? ? 7bit? ? ? ? ? ? 1bit(0)? 1bit? ? ? ?8bit?????????????????????7bit? ? ? ? ?9bit?
按字節(jié)寫每寫一個字節(jié)帶一個地址
按頁寫? 夸頁寫重新發(fā)地址