stm32 IAP

IAP

1、接收APP程序数据,串口命令有两种,1是整包,2是散包(最后一个包);

2、进入跳转的条件:

/*

程序已下载  由APP进入  超时  程序更新完成

A B C D
满足如下条件就会跳转:
AB*+ABC+ABD
A*D
*/

超时:由APP进入的,但是串口通信突然中断了,程序还要继续运行下去,所以只能是,程序已下载的情况下,超过一定时间新程序还没下载完,就直接跳转

APP

1、魔术棒中设置程序启动的地址;

2、程序中设置中断向量表的新地址:   SCB->VTOR = FLASH_BASE | 0x10000; /* Vector Table Relocation in Internal FLASH. */

3、可以复位,进入IAP:__set_FAULTMASK(1);    NVIC_SystemReset();

猜你喜欢

转载自www.cnblogs.com/deyicun/p/11139201.html