提问人:김무성 提问时间:10/26/2023 最后编辑:김무성 更新时间:10/30/2023 访问量:20
跳转至GD32F303系统内存
Jump to GD32F303 System Memory
问:
有许多示例代码用于通过跳转到带有ST32产品的System Momory来下载固件。 我已经尝试过并且很满意并且正在使用中。
但是,GD32 产品的示例代码很少。 而且效果不佳。
请告诉我在哪里修改。
当我运行下面的代码时,我希望跳转到系统内存,但它不起作用。
我不认为这是硬件问题,因为当 Boot1 称为 High 时,它运行良好。
#define boot_addr 0x1FFFF000
void ResetToSysBoot(void)
{
void (*SysMemBootJump)(void);
bspDeInit();
// SCB->VTOR = boot_addr;
SysMemBootJump = (void (*)(void)) (*((uint32_t *)(boot_addr +4)));
__set_MSP(*(uint32_t *)boot_addr);
SysMemBootJump();
}
void bspDeInit(void)
{
//UartPC_Init();
// HAL_RCC_DeInit();
// HAL_DeInit();
rcu_deinit();
SysTick->CTRL = 0;
SysTick->LOAD = 0;
SysTick->VAL = 0;
// Disable Interrupts
//
// for (int i=0; i<8; i++)
// {
// NVIC->ICER[i] = 0xFFFFFFFF;
// __DSB();
// __ISB();
// }
__disable_irq();
}
答: 暂无答案
评论