Уведомления
Очистить все
Вот из одного из проектов выдернул, вариант точно рабочий (STM32F103RB):
#define SYSTEM_MEMORY_ADDRESS 0x1FFFF000 static void JumpToSystemBootloader() { HAL_DeInit(); __disable_irq(); SysTick->CTRL = 0; SysTick->LOAD = 0; SysTick->VAL = 0; const uint32_t ptr = (*((uint32_t *)SYSTEM_MEMORY_ADDRESS)); void (*JumpToSystemMemory)(void); JumpToSystemMemory = (void (*)(void)) (*((uint32_t *) (SYSTEM_MEMORY_ADDRESS + 4))); __set_MSP(ptr); JumpToSystemMemory(); while(1); }
Размещено : 21.10.2024 13:27