STM8S 片内EEPROM 数据写不进去

2019-07-19 21:20发布

用的是IAR编译器,碰到了一个奇怪的问题 EEPROM的地址范围是0x4000~0x43ff

向0x4000 写数据是可以的 eeprom_write_bytes(0x4000,"1234",4);

但向0x4100写数据就不可以eeprom_write_bytes(0x4100,"1234",4),通过STVP查看存储区,没有数据写入

下面是代码,麻烦给指点下,谢谢!
void eeprom_write(unsigned long addr,unsigned char num)
{
 FLASH_WaitForLastOperation(FLASH_MEMTYPE_DATA);  //确保前面的操作完成
 FLASH_Unlock(FLASH_MEMTYPE_DATA); //解锁写保护
 
 FLASH_ProgramByte(addr,num);
 
 FLASH_WaitForLastOperation(FLASH_MEMTYPE_DATA);  //等待操作完成
 FLASH_Lock(FLASH_MEMTYPE_DATA); //写保护
} void eeprom_write_bytes(unsigned long addr,unsigned char *pbuf,unsigned char len)
{
 unsigned char i;
 for(i=0;i<len;i++)
 {
  eeprom_write(addr+i,*pbuf++);
 }
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
正点原子
1楼-- · 2019-07-20 00:25
 精彩回答 2  元偷偷看……
w0rmis20
2楼-- · 2019-07-20 01:56
 精彩回答 2  元偷偷看……
爱博不专
3楼-- · 2019-07-20 07:17
用过STM8S105c6的EEPROM,按照datasheet推荐步骤操作,没发现什么问题啊,挺好用的
NE558
4楼-- · 2019-07-20 09:27
 精彩回答 2  元偷偷看……
tjusyj
5楼-- · 2019-07-20 10:45
你八成用的是stm8s003吧
幸福客
6楼-- · 2019-07-20 12:17
stm8s003最大到0x407f

一周热门 更多>