一、什么是IAP,為什么要IAP
IAP即為In Application Programming(在應用中編程),一般情況下,以STM32F10x系列芯片為主控制器的設備在出廠時就已經使用J-Link仿真器將應用代碼燒錄了,如果在設備使用過程中需要進行應用代碼的更換、升級等操作的話,則可能需要將設備返回原廠並拆解出來再使用J-Link重新燒錄代碼,這就增加了很多不必要的麻煩。站在用戶的角度來說,就是能讓用戶自己來更換設備里邊的代碼程序而廠家這邊只需要提供給用戶一個代碼文件即可。
而IAP卻能很好的解決掉這個難題,一片STM32芯片的Code(代碼)區內一般只有一個用戶程序。而IAP方案則是將代碼區划分為兩部分,兩部分區域各存放一個程序,一個叫bootloader(引導加載程序),另一個較user application(用戶應用程序)。bootload
er在出廠時就固定下來了,在需要變更user application時只需要通過觸發bootloader對userapplication的擦除和重新寫入即可完成用戶應用的更換。如圖1-1所示
一
、什么
是
IAP,為什么要IAP
IAP
即為
In Application Programming
(在
應用中編程
),一般情況下
,
以
STM32F10x
系列芯片為
主控制器的設備在出廠時就已經使用
J-Link
仿真器將應用代碼燒錄了,
如果在
設備使用過程中需要進行
應用
代碼
的
更換、升級等
操作
的話
,則
可能需要將設備
返回
原廠
並
拆解出來再使用J-Link重新燒錄代碼,
這就
增加了很多不必要的麻煩。站在用戶的角度來說,就是能讓用戶自己來更換設備里邊的代碼程序而廠家這邊只需要提供給用戶一個代碼文件即可。
而
IAP卻能很好的解決掉這個難題,
一片
STM32芯片
的Code(代碼)區內
一般只有一個用戶程序
。
而IAP
方案
則是將代碼
區
划分為
兩部分,
兩部分
區域各
存放一個程序,
一個
叫bootloader(
引導
加載程序)
,
另一個
較
user application(
用戶
應用程序)
。
bootload
er在出廠時就固定下來了,在需要變更user application時只需要通過觸發bootloader對userapplication的擦除和重新寫入即可完成用戶應用的更換。如圖1-1所示