IIC其實很簡單的,讓我這個小白來告訴你吧
IIC的主要信號就是三個:啟動信號,停止信號,應(yīng)該信號
啟動和停止信號:在任何時候都可以產(chǎn)生
應(yīng)該信號:在發(fā)送或者接收完成8個位之后的第9個位來產(chǎn)生.0為應(yīng)答,1為不應(yīng)答,向器件寫入數(shù)據(jù)時,應(yīng)答信號由接收器產(chǎn)生,從器件讀出數(shù)據(jù)時,應(yīng)答信號由單片機(jī)產(chǎn)生
以51讀寫24C01為例:
向24C01寫入時,先寫入啟動信號,然后寫入地址(8個位),在第9個位的時候,SDA線要為高電平(釋放SDA線),接下來,單片機(jī)要不斷的讀取SDA線,當(dāng)寫入完成時,24C01會把SDA線拉低,就表示已經(jīng)寫入完成了.
讀出數(shù)據(jù)時:先是一個啟動信號,然后寫入要讀取的地址,再寫入一個啟動信號,然后單片機(jī)就開始讀取SDA的電平數(shù)據(jù)了,在讀取完8個位之后,在第9個位的時候,單片機(jī)要把SDA拉低(0),再給24C01一個時候,等于是告訴24C01已經(jīng)接收到完整的8個位了 |