STM32L152 求助其内置的eeprom如何使用
2个回答
展开全部
STM32L152 求助其内置的eeprom如何使用
先要了解stm32内部flash的使用过程,需要解锁,擦除页,再确定flash地址,向这一地址写入需要保存的数据,写好后再上锁就可以了。建议找些例程看看,
部分代码(擦除页时要关闭中断):
/* 解锁flash控制块 */
FLASH_Unlock();
/* 清除一些标志位 */
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
/* 擦除起始地址为start_add 的 FLASH 页 */
FLASH_ErasePage((u32)0x08019000);
/* 写入数据 */
FLASH_ProgramHalfWord((u32)0x08019000, (u16)*p);
/* 锁定 FLASH 控制块*/
FLASH_Lock();
先要了解stm32内部flash的使用过程,需要解锁,擦除页,再确定flash地址,向这一地址写入需要保存的数据,写好后再上锁就可以了。建议找些例程看看,
部分代码(擦除页时要关闭中断):
/* 解锁flash控制块 */
FLASH_Unlock();
/* 清除一些标志位 */
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
/* 擦除起始地址为start_add 的 FLASH 页 */
FLASH_ErasePage((u32)0x08019000);
/* 写入数据 */
FLASH_ProgramHalfWord((u32)0x08019000, (u16)*p);
/* 锁定 FLASH 控制块*/
FLASH_Lock();
2016-11-23
展开全部
STM32L152 求助其内置的eeprom如何使用
先要了解stm32内部flash的使用过程,需要解锁,擦除页,再确定flash地址,向这一地址写入需要保存的数据,写好后再上锁就可以了。建议找些例程看看,
部分代码(擦除页时要关闭中断):
/* 解锁flash控制块 */
FLASH_Unlock();
/* 清除一些标志位 */
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
/* 擦除起始地址为start_add 的 FLASH 页 */
FLASH_ErasePage((u32)0x08019000);
/* 写入数据 */
FLASH_ProgramHalfWord((u32)0x08019000, (u16)*p);
/* 锁定 FLASH 控制块*/
FLASH_Lock();
先要了解stm32内部flash的使用过程,需要解锁,擦除页,再确定flash地址,向这一地址写入需要保存的数据,写好后再上锁就可以了。建议找些例程看看,
部分代码(擦除页时要关闭中断):
/* 解锁flash控制块 */
FLASH_Unlock();
/* 清除一些标志位 */
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
/* 擦除起始地址为start_add 的 FLASH 页 */
FLASH_ErasePage((u32)0x08019000);
/* 写入数据 */
FLASH_ProgramHalfWord((u32)0x08019000, (u16)*p);
/* 锁定 FLASH 控制块*/
FLASH_Lock();
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询