Хм. А я не использую никаких зарезервированных меток в ОЗУ.
Вот мой какой-то и загрузчиков:
Код
unsigned int BootloaderInputStatus = HW_BootloaderInput();
if((BootloaderInputStatus == BOOT_INPUT_NONE) || (BootloaderInputStatus == BOOT_INPUT_HARD_RESET))
HW_JumpToApplication();
HW_RCCInit();
HW_TimerInit();
HW_ExchangeUARTInit();
...
// основная программа
...
// перед выходом в приложение деактивирую всю использованную периферию
HW_ExchangeUARTStop();
HW_TimerStop();
HW_RCCStop();
HW_JumpToApplication();
HW_BootloaderInput() - считывает значение специального регистра, в котором есть статусные биты, какой вид сброса произошел и от кого.
Цитата
...то при старте будет пропуск бутлоадера, чего очевидно не должно быть.
Почему это? Если сработал WDT, о какой прошивке должна идти речь? Как раз-таки после сброса по WDT загрузчик должен быть пропущен и должно запуститься снова приложение, на мой взгляд.