Flash 存储保护
STM32 提供了 Flash 存储的写保护机制,以防止意外的写入操作。你可以通过设置特定的寄存器来保护 Flash 存储区域。
3.2 启用 Flash 写保护
STM32F030F4P6 的 Flash 写保护可以通过 FLASH_OB(Flash Option Bytes)进行配置。
代码示例:启用 Flash 写保护
c
复制代码
// 启用 Flash 写保护
void Enable_Flash_Write_Protection(void) {
FLASH_OBProgramInitTypeDef obInit;
HAL_FLASH_Unlock(); // 解锁 Flash 控制寄存器
HAL_FLASH_OB_Unlock(); // 解锁 Option Byte 寄存器
obInit.OptionType = OPTIONBYTE_WRP; // 写保护类型
obInit.WRPState = OB_WRPSTATE_ENABLE; // 启用写保护
obInit.WRPPage = 0x0; // 对 Flash 区域 0 写保护
HAL_FLASHEx_OBProgram(&obInit);
HAL_FLASH_OB_Launch(); // 执行 Option Byte 配置
HAL_FLASH_Lock(); // 锁定 Flash 控制寄存器
}
|