ARM IAP升級方法
兩個地方值得注意:
本文引用地址:http://2s4d.com/article/148075.htm(1) 中斷向量的映射
(2) 用戶程序Ro_base設(shè)置與要下載的地址一致,
也就是說對不同位址的FLASH下載相同的程序,必須首先要在KEIL下設(shè)置該程序?qū)?yīng)的Ro_base地址,生成不同的hex或bin文件,進行下載,否則可能由于地址設(shè)置的不正確,導(dǎo)致下載后程序無法運行,這點尤為重要!!!!!!!!!!!!!(51,ARM都存在這個問題)
中斷向量從0x0000000--0x00000001C共4*8=32個字節(jié),還應(yīng)包括后面到0x00000040之前的代碼都應(yīng)該映射,因為后面包括具體跳轉(zhuǎn)的地址。(所以要映射從0x0000000----0x000003F共64個字節(jié))
0x00000000 E59FF018 LDR PC,[PC,#0x0018]
0x00000004 E59FF018 LDR PC,[PC,#0x0018]
0x00000008 E59FF018 LDR PC,[PC,#0x0018]
0x0000000C E59FF018 LDR PC,[PC,#0x0018]
0x00000010 E59FF018 LDR PC,[PC,#0x0018]
0x00000014 E1A00000 NOP
0x00000018 E59FF018 LDR PC,[PC,#0x0018]
0x0000001C E59FF018 LDR PC,[PC,#0x0018]
0x00000020 00080054 DD 0x00080054
0x00000024 00080040 DD 0x00080040
0x00000028 00080044 DD 0x00080044
0x0000002C 00080048 DD 0x00080048
0x00000030 0008004C DD 0x0008004C
0x00000034 00000000 DD 0x00000000
0x00000038 0008018C DD 0x0008018C
0x0000003C 00080050 DD 0x00080050
0x00000040 EAFFFFFE B 0x00000040
0x00000044 EAFFFFFE B 0x00000044
0x00000048 EAFFFFFE B 0x00000048
0x0000004C EAFFFFFE B 0x0000004C
0x00000050 EAFFFFFE B 0x00000050
評論