使用STM32G071碰到一个问题,好几天了,一直没有找到问题,各位帮忙看下。系统在执行的过程中需要对当前的加密位进行判断,如果没有加密就要进行加密,但是在执行FLASH_CR寄存器中OBL_LAUNCH位置1,仿真器就连接不了MCU。 HAL_FLASHEx_OBGetConfig(&OBInit); if(OBInit.RDPLevel == OB_RDP_LEVEL_0){ //判断程序是否加密 OBInit.OptionType = OPTIONBYTE_RDP; OBInit.RDPLevel = OB_RDP_LEVEL_1; g_OPTR = OBInit.RDPLevel; HAL_FLASH_Unlock(); HAL_FLASH_OB_Unlock(); HAL_FLASHEx_OBProgram(&OBInit); HAL_FLASH_OB_Launch(); //执行FLASH_CR寄存器中OBL_LAUNCH位置1 } |
远离深坑、STM32G031K8T6,不知道后面是否会优化修正?
STM32G031进hardfault的问题
如何对程序加密
STM32G0 调用HAL_PWR_EnterSTOPMode 进入停机模式中断唤不醒什么原因,有人碰到没
如何进行STM32G031的PWM溢出中断设置
STM32G070 定时器初始化后直接进入中断
STM32G070 I2C从机配置SBC字节控制模式如何实现发送?
STM32G070 GPIO寄存器ODR、BSRR和BRR
STM32G070 DMA外设到外设模式
STM32将程序放在RAM中执行的相关问题
保护级别2的时候才是断开和仿真器的连接,级别1的时候是没有断开的,可以使用仿真器从级别1调成级别0,并擦除程序代码。STM32F系列的是没有这个问题的。
当设置了读保护级别1的时候,肯定是禁止调试的,否则读保护级别1就没有了意义了。 但是可以烧录optionbyte的RDP位,以便恢复空片,
是我之前没有表述清楚,是禁止调试没有错。但是现在的问题是程序改板RDP等级后,STM32CubeProgrammer通过STLINK就找不到目标板,从而改变不了RDP位,不知道是什么问题。