最近在用EEPROM芯片24LC256,其中提到了页写能力是64bytes,我写的时候按0x00地址开始,当地址对64取余为0时,重新发送一次地址,进行写一次页写。但是看数据手册的时候,说明页写不能超过其物理页边界,那这个芯片的物理边界是多少呢?datasheet中没有说明这个EEPROM是分块组织的(以前用24LC16时,datasheet中注明是分8块组织的)。而且我认为这个64bytes应该是这颗eeprom芯片内部缓冲器的大小,所谓的“页写”应该是连续写的意思。
我每次写出一个字节之后,地址加1对64取余,如果为0,重新发送一次地址接着写。芯片的的物理边界地址,应该是对64取余为0的,这样可以自然跨越物理边界的。但是我对24LC256实验的时候在大概4000的位置写内容,读出来有时候会出错。但不是每次都出错(猜想24LC256是分8块组织的,一块是4kbytes)。难道确实如网上所说,每个物理页的开始和结尾都是不安全的吗? |