STM32H7 更改 OBFlash 中的 boot1 地址

STM32H7 Changing boot1 adress in OBFlash

我在更改闪存选项字节中的 boot1 地址时遇到问题

我想更改 boot1 地址,允许我在引导加载程序模式(系统内存)或用户代码模式(闪存)下启动而无需使用跳转。

我目前正在STM32H743 EVAL Board上进行测试

这是更改地址的代码,它似乎没有更改任何内容

HAL_FLASH_OB_Unlock();
HAL_FLASH_Unlock();
 
/* Change Boot0 address */
 
if(mode)OBInit.BootAddr1 = BOOTLOADER_ADDR0;
else OBInit.BootAddr1 = USER_CODE_ADDR0;
HAL_FLASHEx_OBProgram(&OBInit);
 
if (HAL_FLASH_OB_Launch() != HAL_OK)
{
    return(-1);//error
}
 
HAL_FLASH_OB_Lock();
HAL_FLASH_Lock();

谢谢,

加布里埃尔

已修复: 添加 OBInit.BootConfig=OB_BOOT_ADD1;if(mode)OBInit.BootAddr1 = BOOTLOADER_ADDR0;