1.最近做TFTP远程升级,能正常下载文件,但是跳转后死机,无法启动,需要重加电才行,不知道原因。
后来一步步排查发现,每次升级需要写芯片FLASH,然后直接跳转到APP。
解决方法:在写FLASH后,软件复位HAL_NVIC_SystemReset(); 然后再跳转到APP。
2.http升级,程序下载完成,跳转后死机,卡死无法运行升级程序。但是APP程序直接编程下载又是可以的,奇怪问题。
解决:将MX_RTC_Init();放到void StartDefaultTask(void const * argument)开始任务中初始化,不在main中,升级运行正常。
__disable_irq();
IAP_Jump_Fun();
__enable_irq();