|
在项目中使用到STM32G474RE的dual bank的IAP升级功能,编写一份程序,分别下载到地址:0x08000000和地址:0x08040000中,通过按键进行bank的切换,通过指示灯显示在哪个bank中运行,运行结果:在bank1中程序可以正常运行,但是一旦程序跳入bank2,程序就无任何响应;切换bank的代码如下: void switch_bank(void) { HAL_FLASH_Unlock(); __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_OPTVERR); HAL_FLASH_OB_Unlock(); HAL_FLASHEx_OBGetConfig(&OBInit); OBInit.OptionType = OPTIONBYTE_USER; OBInit.USERType = OB_USER_BFB2; if (((OBInit.USERConfig) & (OB_BFB2_ENABLE)) == OB_BFB2_ENABLE) / BANK1 active for boot / { OBInit.USERConfig = OB_BFB2_DISABLE; } else { OBInit.USERConfig = OB_BFB2_ENABLE; } if(HAL_FLASHEx_OBProgram(&OBInit) != HAL_OK) { ; } if(HAL_FLASH_OB_Launch()!= HAL_OK) { ; } HAL_FLASH_OB_Lock(); HAL_FLASH_Lock(); } 求各位大神帮忙看下,问题出在哪里,十分感谢!!! |
fdcan通信内部回环正常,换成正常模式收不到数据
G474的opamp失效症状。有大佬遇到相同的症状吗
STM32G474RBT6使用Keil工程通过仿真器下载程序时,程序量超过64K时,就会下载失败,求教。
Motor Control Workbench六步算法显示硬件不支持电流检测,同一套硬件FOC算法就显示支持;硬件为B-G431B-ESC1
STM32G474VET6如何配置HRTIM的中心对齐模式
STM32G474RBT6芯片,hal库默认设置为双bank模式,怎样修改为单bnak模式?使用STM32CubeMX工具生成工程时,只能选双bank模式,不能选单bank模式!
STM32G474 HRTIM 推挽模式下 关闭死区 在比较寄存器较小的情况下,存在输出脉宽直接到100%
最近在做单极倍频SPWM
stm32G474RBT3的flash擦除寿命是多少?
stm32g431rbt怎么显示汉字
微信公众号
手机版
小方法 : 切换时可以用按键触发。 这样就可以停下来用烧录器看看相关配置是否是期望的了。
谢谢回复!bank2中我设置了偏移地址:0x08000000;试了好多方法,就是跳转到bank2中运行不起来?不知道哪地方还有问题;
这个地址如果编译时没有设置,那么生成的代码是无法正确寻址的。