單片機(jī)調(diào)EEPROM存儲器24C256
設(shè)置MSP430單片機(jī)為主設(shè)備,24C256為從設(shè)備。IIC總線由SDA和SCL兩條線組成,每根線都聯(lián)結(jié)4.7K的上拉電阻。
主設(shè)備向24C56寫:主設(shè)備發(fā)送start信號—>接著發(fā)送8位Device address(0xa0寫)—>24C256比較受到的地址,發(fā)送應(yīng)答信號ack->主設(shè)備受到ACK后,先發(fā)送First word address(高8位)—>24C256受到后返回ack應(yīng)答—>主設(shè)備發(fā)送Second word address(低8位)—>24C256受到后返回ack應(yīng)答->主設(shè)備發(fā)送數(shù)據(jù)data—>256返回ack,從設(shè)備每受到一個數(shù)據(jù)就返回一個ack,主設(shè)備受到ack后就接著發(fā)送下一個data,直到所有數(shù)據(jù)發(fā)送完畢,->最后由主設(shè)備發(fā)送stop信號。First word address(高8位)和Second word address(低8位)用來確定從設(shè)備中要寫入數(shù)據(jù)的地址。
主設(shè)備讀24c256:主設(shè)備發(fā)送start信號—>接著發(fā)送8位Device address(0xa0寫)—>24C256比較受到的地址,發(fā)送應(yīng)答信號ack->主設(shè)備受到ACK后,先發(fā)送要從24C256中讀出數(shù)據(jù)的寄存器地址的First word address(高8位)—>24C256受到后返回ack應(yīng)答—>主設(shè)備發(fā)送256寄存器地址的Second word address(低8位)—>24C256受到后返回ack應(yīng)答->主設(shè)備發(fā)送star信號—>接著發(fā)送8位Device address(0xa1讀)—>256返回ack->讀從設(shè)備數(shù)據(jù)1,ack->讀從設(shè)備數(shù)據(jù)2,ack->……->讀從設(shè)備數(shù)據(jù)n,ack—>在接收最后一個字節(jié)時,主設(shè)備發(fā)送NO ACK信號,然后主設(shè)備發(fā)送stop信號。
評論