
STM32单片机Flash先擦后写函数分析案例
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本文详细解析了STM32单片机中Flash存储区域的操作机制,并以一个实际案例探讨了“先擦除再写入”的编程实践,旨在帮助工程师更有效地管理和优化程序代码。
FLASH_WriteByte 函数用于分析案例并实现先擦除后写入的操作。函数定义如下:
```c
void FLASH_WriteByte(u32 addr, u16 flashdata1) {
FLASH_Status status = FLASH_COMPLETE;
// 解锁Flash编程擦除控制器
FLASH_Unlock();
// 清除标志位
FLASH_ClearFlag(FLASH_FLAG_BSY | FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
// 擦除指定地址页
status = FLASH_ErasePage(addr);
// 从指定页的addr地址开始写入数据
status = FLASH_ProgramHalfWord(addr, flashdata1);
}
```
这段代码中,先解锁Flash编程擦除控制器,清除相关的标志位后进行页面擦除操作,并且在完成擦除之后执行半字节的数据写入。
全部评论 (0)
还没有任何评论哟~


