STM32F10x_HAL_RDP
来源:http://bbs.21ic.com/icview-2543706-1-1.html?fromuser=
/**************************************************************** * Function: Flash_EnableReadProtection * Description: Enable the read protection of user flash area. * Input: NONE * Output: NONE * Return: NONE *****************************************************************/ void Flash_EnableReadProtection(void) { FLASH_OBProgramInitTypeDef OBInit; __HAL_FLASH_PREFETCH_BUFFER_DISABLE(); HAL_FLASHEx_OBGetConfig(&OBInit); if(OBInit.RDPLevel == OB_RDP_LEVEL_0) { OBInit.OptionType = OPTIONBYTE_RDP; OBInit.RDPLevel = OB_RDP_LEVEL_1; HAL_FLASH_Unlock(); HAL_FLASH_OB_Unlock(); HAL_FLASHEx_OBProgram(&OBInit); HAL_FLASH_OB_Lock(); HAL_FLASH_Lock(); } __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); } /**************************************************************** * Function: Flash_DisableReadProtection * Description: Disable the read protection of user flash area. * Input: NONE * Output: NONE * Return: NONE *****************************************************************/ void Flash_DisableReadProtection(void) { FLASH_OBProgramInitTypeDef OBInit; __HAL_FLASH_PREFETCH_BUFFER_DISABLE(); HAL_FLASHEx_OBGetConfig(&OBInit); if(OBInit.RDPLevel == OB_RDP_LEVEL_1) { OBInit.OptionType = OPTIONBYTE_RDP; OBInit.RDPLevel = OB_RDP_LEVEL_0; HAL_FLASH_Unlock(); HAL_FLASH_OB_Unlock(); HAL_FLASHEx_OBProgram(&OBInit); HAL_FLASH_OB_Lock(); HAL_FLASH_Lock(); } __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); }
SMT32F10x 使用 HAL 库配置Flash 读保护
浙公网安备 33010602011771号