蓝桥杯——使用eeprom存取和读取数据
一、原理部分 设备寻址 在开启eeprom后需要一个8位设备地址,以使芯片能够进行读或写操作,第八位为0的时候进行写的操作,为1的时候进行读的操作。 写操作 进行写操作的时候要先写入一个设备地址,然后还需要写入一个8位的数据地址,eeprom收到这个地址后会再次响应,这时eeprom会接受后面的8位的数据,接受完成后会储存数据到内部,直到全部写完后才会再次响应。 根据时序图编写以下代码 void write_eeprom ( unsigned char add , unsigned char date ) { IIC_Start ( ) ; //启动总线 IIC_SendByte ( 0xa0 ) ; //发送设备地址,第八位为0所以为写 IIC_WaitAck ( ) ; //等待应答 IIC_SendByte ( add ) ; //发送数据地址 IIC_WaitAck ( ) ; //等待应答 IIC_SendByte ( date ) ; //发送数据 IIC_WaitAck ( ) ; //等待应答 IIC_Stop ( ) ; //停止总线 } 读操作 读操作的时候只需要在设备地址的第八位改成1就可以进行读取。 根据时序图编写以下代码 unsigned char read_eeprom ( unsigned char add ) { unsigned char temp