我最近在使用I2C读写AT24C256,当我在某个地址写按字节方式写单个数据时,我在其先后总共128个字节的地址都可以读到这个数,很是郁闷,若是按页写多个字节就会发生读错误,读出的数据有时错乱,有时少部分,还有些乱七八糟的数据,大概是我以前写的。例如我写入123456789asdf,有时就会读出678934000ffff。
并不是发生卷页了,因为我即使是从页的开始写,写十几个字节(每页64个字节)都不行,假如我按页在地址300处写入“123456789”,我按字节读时,在300~3ff处读到的一样,都是“1”,好像每次都读入上次写入的首个字节,不管你的读地址是多少,还请指教。我现在用的EEPROM是AT24C256,现在,我换了一块开发板,其上的EEPROM是M24c64,采用这个程序就不会出错,这是怎么回事? |