|
void Swap_Bank(void) { FLASH_OBProgramInitTypeDef OBInit; taskENTER_CRITICAL(); //进入临界区 __HAL_FLASH_PREFETCH_BUFFER_DISABLE(); //关闭FLASH预取缓冲区 HAL_FLASH_Unlock(); //解锁用户闪存区域 __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_OPTVERR); //清除FLASH选项有效性错误标志 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对应存储区2 { OBInit.USERConfig =OB_BFB2_DISABLE; //切换到存储区1 } else OBInit.USERConfig =OB_BFB2_ENABLE; //切换到存储区2 HAL_FLASHEx_OBProgram(&OBInit); HAL_FLASH_OB_Launch(); //启动选项字节加载 HAL_FLASH_OB_Lock(); HAL_FLASH_Lock(); taskEXIT_CRITICAL(); //退出临界区 delay_ms(20); NVIC_SystemReset(); } |
记录使用Cube生成HRTIM工程时的一个bug
stm32 usb hid设备能发数据给PC,但不能接收PC的数据!!!
STSPIN32G4 STM32G431VBTx CAN FIFO发送数据帧随机变远程帧
如何将电机转速度控制在0.1RPM以下?我尝试过将SPEED_UNIT改为480,电机转速度可以控制在0.125RPM,但最转到250RPM时,编码器计数好像溢出了
STM32G474 HRTIM的single-shot功能,如何使用?
无源晶振开关电路设计
为什么DMA搬运数据只搬运最后1个字节的数?
STSPIN32G4内部驱动电压输出问题
使用Hal库的SPI读取磁边传感器导致STM32G4无法运行
定时器触发SPI
微信公众号
手机版
问题已解决