mamalihui 发表于 2007-6-13 20:50

请教一个问题

请教大家一个问题,我们公司用philips的arm7芯片,要用到IAP来升级程序,但是前辈没有用芯片的REMAP功能,而是主程序1在收到升级命令后,<br />&nbsp;&nbsp;&nbsp;case&nbsp;EXUI_SYS_UPGRADE:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//接收到了请求升级命令&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;ent_critical();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//关掉所有中断。<br />&nbsp;&nbsp;&nbsp;&nbsp;(&nbsp;*(&nbsp;void&nbsp;(&nbsp;*&nbsp;)&nbsp;()&nbsp;)(&nbsp;0x2000)&nbsp;)();<br /><br />即执行位于FLASH&nbsp;0x2000处的代码,该处代码为另一项工程(即所写的升级iap程序工程2)的bin码。这样一个程序不就有两个main函数了吗?不太理解,虽然升级工程2把系统堆栈重新初始化了,但总是一个函数里有两个main吗?恳请各位指点。
页: [1]
查看完整版本: 请教一个问题