字节(option byte)熔断下载和调试功能"/>
STM32F401VCT6在软件程序中配置选项字节(option byte)熔断下载和调试功能
选项字节是什么
选项字节用于配置 FLASH 的读写保护、电源管理中的 BOR 级别、软件/硬件看门狗等功能,这部分共 32 字节。可以通过修改 FLASH 的选项控制寄存器修改。
因业务需要,将RDP配置为级别2,从而禁止调试和从RAM启动
注意:RDP一旦设置为级别2,不可降级,相当于熔断下载和调试,芯片将无法通过硬件方式下载,使用该功能之前,一定要实现远程升级功能,否则该芯片将报废。
实现步骤,使用cubemx生成一个hal库文件,在用户代码中添加如下代码
FLASH_OBProgramInitTypeDef obData;HAL_FLASH_Unlock();HAL_FLASH_OB_Unlock();HAL_FLASHEx_OBGetConfig(&obData);printf("***pOBInit->RDPLevel=%02x\r\n",obData.RDPLevel);if(obData.RDPLevel<OB_RDP_LEVEL_2){obData.OptionType=OPTIONBYTE_RDP;obData.RDPLevel=OB_RDP_LEVEL_2; if(HAL_FLASHEx_OBProgram(&obData)!=HAL_OK){printf("写入失败 \r\n");}else{printf("写入成功 \r\n");HAL_FLASH_OB_Launch();} }HAL_FLASH_OB_Lock();HAL_FLASH_Lock();printf("********pOBInit->RDPLevel=%02x\r\n",obData.RDPLevel);printf("HAL_FLASHEx_OBProgram=%d \r\n",HAL_FLASHEx_OBProgram(&obData));
串口监听数据:
下载失败,下载和调试功能被熔断
ok!
更多推荐
STM32F401VCT6在软件程序中配置选项字节(option byte)熔断下载和调试功能
发布评论