如何修改在MDK下适合IAP用的程序?

发布: 2009-9-04 16:50 | 作者: hqy51222 | 来源: StmFans思蜕盟 OPELC 自由电子联盟

   这两天看了入门教程里的IAP 然后就动手试了试 由于这段时间学的都是用MDK所以就没换IAR 前面一切顺利, IAP Bootload 测试成功
可是后面的应用程序却怎么也弄不出来 我修改了 Terget    0x08000000-->0x08002000     
还有 NVIC_SetVectorTable(NVIC_VectTab_FLASH+0x2000, 0x2000);  这个好像怎么改都不影响程序执行??   
改完后这个程序就不能运行了  DEBUG提示错误:“*** error 65: access violation at 0xFFFFFFF4 : no 'write' permission”
唯有把Terget改回0x08000000才恢复正常。我是个新手 想了一整天还是不知道从何下手 只能请教各位高手:
  MDK中将程序位置向后移2000 应该有哪些步骤 或者是否有相关资料可以参考 ?   
binglin (2009-9-04 17:05:35)
hqy51222 (2009-9-04 17:19:38)
是这样吗 就是这个设完就不能运行了 能不能详细些 谢谢了
binglin (2009-9-04 17:37:49)
坛子上有不少这方便的讨论,你都看看?
hqy51222 (2009-9-04 20:35:32)
刚才回家的路上想通了 更改完的程序应该就是不能运行的 因为STM32的启动地址就是0x8000000 地址偏移导致不能正常工作(不知道这么理解有没错) 但是这样的话IAP应用程序中的中断又是怎么实现的呢 看来还得好好研究下 呵呵
谢谢binglin的热心解答