天天看點

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

飛淩 OK1052-C 開發闆燒寫方式及工具多種多樣,現在我們先來總結一下:

1、 SWD 方式燒寫,使用 DAP 仿真器,上位機使用 keil MDK 點選 download 下載下傳。

2、 USB 方式燒寫,使用 USB 資料線連接配接闆子和 PC 機,上位機有三個燒寫工具:

1) NXP MCU Boot Utility 工具。

2) RT-flash 工具。

3) MfgTool2工具。

3、 SD 方式卡燒寫,将要燒寫的鏡像放入 SD 卡,從 SD 卡啟動燒寫程式進行燒寫。

當然除了以上我們總結的幾點, OK1052-C 還有其他燒寫方式,這裡不再一一列舉。這幾種方式各有千秋也各有不便,具體優缺點需要根據大家的應用環境決定。

一、簡單介紹一下 IAP

今天給大家介紹一下,如何通過 IAP 方式進行程式燒寫。目前 OK1052-C IAP 功能,在設計 在設計固件程式時編寫兩個項目代碼,第一個項目程式 ( bootloder ) 不執行正常的功能操作,而隻是通過 UART 接收 鏡像 資料,執行對第二部分代碼的更新;第二個項目代碼 ( app ) 才是真正的功能代碼。這兩部分項目代碼都同時燒錄在 User Flash 中,當晶片上電後,首先是第一個項目代碼 bootloder 開始運作,它作如下操作:

1) 序列槽等待輸入 “ space ”鍵,等待逾時時間 1000ms ;

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

2) 如果沒有接收到 “ space ”字元,則 跳轉到第二部分代碼執行 app

3) 如果接收到該字元,進入選擇菜單。

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

4) 選擇 2 執行更新操作

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

5) 選擇鏡像,并更新完成之後,再次進入菜單,可選擇 1 運作新的 app ,也可選擇 3 重新啟動系統:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

使用 IAP 方式進行程式燒寫,就省去了頻繁使用仿真器連接配接燒寫的麻煩,也不用像 USB 燒寫那麼繁瑣。不管是開發階段還是 維護階段,都能輕松更新。

二、具體操作,實作 APP 更新

OK1052-C IAP 主要使用序列槽通過 Ymodem 協定進行鏡像資料傳輸,因為 secureCRT 工具有 Ymodem 傳輸功能,是以我們使用 secureCRT 工具作為序列槽終端。

步驟一:燒寫 BootLoder 鏡像。

燒寫 BootLoder 鏡像我們可以使用 SWD 方式和 USB 方式燒寫,燒寫一次即可。

步驟二:制作 APP 鏡像

我們的 BootLoder 鏡像存儲在 flash 中的空間範圍為: 0X0 – 0X7FFF;

APP 鏡像存儲偏移位址為: 0X8000 ;

gpio 例程為例,我們做一個 APP 鏡像:

打開boardsevkbimxrt1050driver_examplesgpioled_outputmdk 下工程。

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

選擇 XIP 工程:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

然後進入魔術棒—link 配置 --Edit :

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

打開MIMX RT1052xxxxx_flexspi_nor.scf檔案作如下更改:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

注釋掉以下代碼:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

然後進入魔術棒—user ,在 Run#1 中加入指令以生成 .bin 檔案:

#K ARMARMCCbinfromelf.exe --bincombined [email protected] !L

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

配置完成,之後編譯工程,最後會生成 igpio_led_out.bin 鏡像檔案,至此 APP 鏡像制作完成。

步驟三: IAP 燒寫 APP 鏡像

BootLoder 鏡像燒寫完成之後,打開 PC 機軟體 secureCRT ,配置好序列槽:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

重新開機闆子,通過序列槽列印資訊,可以看到

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

然後按空格鍵,可以進入菜單:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

選擇 2 update app 更新 APP 鏡像:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法
bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

選擇要燒寫的鏡像:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

燒寫成功:

bin檔案檢視器app_研發課堂丨飛淩iMXRT1052開發闆使用IAP線上更新APP的操作方法

重新開機闆子或者選擇 1 : run app ,程式開始運作。