大家新年好!
最近我在网上看到如下的一个单片机IAP升级程序(设计思路),大家觉得如何? 有什么地方存在问题或可以改进的吗?
1.分别编制IAP及APP两个程序。
2.MCU复位后,总是先执行IAP程序。并且在IAP程序中,
  通过判断设定条件,来决定是直接跳转到APP程序并执行,
  还是进入对APP程序进行升级的操作。
  APP升级OK,可进入新的APP程序并执行。
3.在IAP程序中,有两种方式可以让其进入APP升级状态:
  a.开机前按下规定的按键不放,则进入升级状态。
  b.读取标志位的值,若为0xA55A,则进入升级状态(升级OK后,
    将其改为0xffff,则下次上电后,若不按升级键,则直接进入APP程序)。
4.在APP执行过程中,当接收到特殊的APP升级命令后,
  则会将标志位的值改为0xA55A,并执行软件复位操作,以让MCU复位并
  进入IAP程序。此时IAP会直接进入APP升级状态。
5.IAP升级按键的意义:
  a.标志位只能在APP中修改,但最开始MCU中只烧录进了IAP程序。所以
    此时可以按下升级键强制让IAP程序进入APP升级状态,将最初版的APP
    程序下载到MCU中。当然也可以将IAP程序和最初版的APP程序的
    HEX文件合二为一,并一次烧录进MCU.下次需要升级APP时,则直接在
    APP中发升级命令即可。
  b.若在运行或升级等过程中,APP程序遭到破坏,且不能再正确接收升级命令时,
    若要升级或恢复APP程序,则只能按升级键并重开机实现了。

 
					
				
 
			
			
			
						
			 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

