stc32g eeprom操作问题
addr1 = 0x0000;IAP_EraseSector(addr1);
//epdate1 = IAP_ReadByte(addr1);
IAP_ProgramByte(addr1, 0xF0);
//epdate2 = IAP_ReadByte(addr1);
addr1++;
IAP_ProgramByte(addr1, 0xF1);
//epdate3 = IAP_ReadByte(addr1);
addr1++;
IAP_ProgramByte(addr1, 0xF2);
//epdate4 = IAP_ReadByte(addr1);
addr1 = 0x0000;
epdate2 = IAP_ReadByte(addr1);
addr1++;
epdate3 = IAP_ReadByte(addr1);
addr1++;
epdate4 = IAP_ReadByte(addr1);
测试结果:epdate2 、epdate3 、epdate4都是0xF2
addr1 = 0x0000;
IAP_EraseSector(addr1);
epdate1 = IAP_ReadByte(addr1);
IAP_ProgramByte(addr1, 0xF0);
epdate2 = IAP_ReadByte(addr1);
addr1++;
IAP_ProgramByte(addr1, 0xF1);
epdate3 = IAP_ReadByte(addr1);
addr1++;
IAP_ProgramByte(addr1, 0xF2);
epdate4 = IAP_ReadByte(addr1);
测试结果:epdate2 、epdate3 、epdate4分别为0xF0、0xF1、0xF2
这个是为什么呢?还有EEROM的地址空间其实位置可以直接写0x0000吗,我试过地址写成0xFE0000也是同样的结果
烧录附件例子到芯片里试试,通过串口打印EEPROM操作结果
页:
[1]