折腾了两天,不想再整,妥协了。对AT24C16的访问走的是IIC总线,为了区分单字节和多字节访问,我编了两个读写函数: EEPROM_ReadBuff(FM24C16_ADDRESS, EE_ADDR_MODULE, sizeof(modu …
标签 : EEPROM › 5个相关结果 158次浏览
先说结论: 1,擦除操作一次必须擦除一个扇区; 2,在写操作之前必须进行擦除操作。 由于擦除一次就是一个扇区,所以写的时候要把所有需要保存的数据全部一次性保存下来,然后读的时候可以按地址一个个的读。我具体的操作方法见下: 1,先对EEPRO …
今天总算实现了EEPROM的任意地址正确读写。驱动还是原来的驱动,只是把一些延迟什么的改短了一下,避免中断影响过多。还有就是正确认识了AT24C512的地址特性: 1,AT24C512的一页为128字节,在写数据的时候,如果一个写周期内字节 …
测试AT24C512已经两周,期间碰到个各种坑进行总结。 1,第五字符不正确问题。后来发现是读数据错误,使用地址偏移后,可以读出第五个数,但是新的第五个数打印输出继续错误。而使用数组直接赋值时,测试发现串口打印程序没有问题。这个坑现在已经丢 …
这两周一直在测试AT24C512,之前用的EEPROM是AT24C16,与其相比,AT24C512有一些改动: 1,寻址空间变大,数据地址由8位变为16位,因此写入时序需要加入高、低位地址写入; 2,C16是 …