当前位置:首页 > 单片机 > 单片机
[导读]一、前两篇博客实现的功能是在APP和IAP之间进行程序跳转;二、这里面有以下需要注意的地方;1、程序跳转函数切记不要在定时器中断里编写,否则程序可以正常跳转但是中断功能却不能执行。原因,可以参考以下链接;htt

一、前两篇博客实现的功能是在APP和IAP之间进行程序跳转;

二、这里面有以下需要注意的地方;

1、程序跳转函数切记不要在定时器中断里编写,否则程序可以正常跳转但是中断功能却不能执行。原因,可以参考以下链接;

http://xzq1019.blog.163.com/blog/static/5996566520100181146689/

就是,在中断里进行跳转的话,stm32会认为跳转函数只是中断处理函数的一部分,所以会出现挂起,不能再响应中断。一般的做法是在中断里设标志位,在主函数里进行跳转。

2、在IAP程序跳转前关闭总中断,在跳转到APP程序后,打开总中断。

3、中断的打开和关闭可以利用下面的函数

__disable_irq();

__enable_irq();

4、有些时候为了验证IAP程序有没有成功跳转到APP模式下,可以直接进行APP程序的调试。在APP程序的第一行代码设置断点,如果IAP程序跳转成功,则会在端点处停下来。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭