蓝桥杯嵌入式组开发——EEPROM
EEPROM我们只需要导入给的I2C库文件 自己参照AT24C02的数据手册把读写的时序写出来就可以啦。
1.AT24C02读写
参考AT24C02数据手册
代码如下:
void at24c02_write(u8 address,u8 data)
{
I2CStart();
//I2CSendAck();
I2CSendByte(0xa0);
I2CWaitAck();
I2CSendByte(address);
I2CWaitAck();
I2CSendByte(data);
I2CWaitAck();
I2CStop();
}
unsigned char at24c02_read(u8 address)
{
unsigned char val;
I2CStart();
I2CSendByte(0xa0);
I2CWaitAck();
I2CSendByte(address);
I2CWaitAck();
I2CStart();
I2CSendByte(0xa1);
I2CWaitAck();
val = I2CReceiveByte();
I2CWaitAck();
I2CStop();
return val;
}
2.注意事项
ATC2402的数据存储只有范围只有0x00—0xff,256个地址
存储的数据范围也只有0-255
at24c02_write(0x01,257);
如果超出256则存储的数据,会对数据进行256求余
257结果里面存储的就是1
如果是256*2+2 那存储的就是2。