BL24C32(EEPROM)读写操作
设备地址:如果A0-A2接地,则写的时候设备地址是A0,读的时候设备地址是A1.
写操作:起始信号->设备地址->写入的地址->写入的数据

地址格式:

注意:写入的地址:FIRST WORD ADDRESS(MSB)-高四位不用
SECOND WORD ADDRESS(LSB)
代码实例:
I2C_Start(I2Cx);
I2C_TransmitOneByte(I2Cx, WriteDeviceAddress);
I2C_TransmitOneByte(I2Cx,(uint8_t)WriteAddr_MSB);
I2C_TransmitOneByte(I2Cx,(uint8_t)WriteAddr_LSB);
for (i = 0; i < dataLength; i++)
{errorStatus |= I2C_TransmitOneByte(I2Cx, wrBuff[i]);if (errorStatus != I2C_HW_STATUS_ERROR_NULL){break;}
}
读操作:起始信号->设备地址(A0)->需要读的地址->起始信号->设备地址(A1)

注意:需要读的地址:FIRST WORD ADDRESS(MSB)-高四位不用
SECOND WORD ADDRESS(LSB)
代码实例:
I2C_Start(I2Cx);
I2C_TransmitOneByte(I2Cx,WriteDeviceAddress);
I2C_TransmitOneByte(I2Cx,ReadAddr_MSB);
I2C_TransmitOneByte(I2Cx,ReadAddr_LSB);I2C_Start(I2Cx);
I2C_TransmitOneByte(I2Cx,ReadDeviceAddress);
for (i = 0; i < dataLength ; i++)
{errorStatus |= I2C_ReceiveOneByte(I2Cx, &rdBuff[i], I2C_ACK);if (errorStatus != I2C_HW_STATUS_ERROR_NULL){break;}
}
以上就是BL24C32(EEPROM)读写操作,实测可用。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

