飛淩 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 ;
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5CN3YmNiVTOhVWZ1ITZiZ2N5MTZwQTNjhTY2gjY3UmYj9CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
2) 如果沒有接收到 “ space ”字元,則 跳轉到第二部分代碼執行 app
3) 如果接收到該字元,進入選擇菜單。
4) 選擇 2 執行更新操作
5) 選擇鏡像,并更新完成之後,再次進入菜單,可選擇 1 運作新的 app ,也可選擇 3 重新啟動系統:
使用 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 下工程。
選擇 XIP 工程:
然後進入魔術棒—link 配置 --Edit :
打開MIMX RT1052xxxxx_flexspi_nor.scf檔案作如下更改:
注釋掉以下代碼:
然後進入魔術棒—user ,在 Run#1 中加入指令以生成 .bin 檔案:
#K ARMARMCCbinfromelf.exe --bincombined [email protected] !L
配置完成,之後編譯工程,最後會生成 igpio_led_out.bin 鏡像檔案,至此 APP 鏡像制作完成。
步驟三: IAP 燒寫 APP 鏡像
BootLoder 鏡像燒寫完成之後,打開 PC 機軟體 secureCRT ,配置好序列槽:
重新開機闆子,通過序列槽列印資訊,可以看到
:
然後按空格鍵,可以進入菜單:
選擇 2 update app 更新 APP 鏡像:
選擇要燒寫的鏡像:
燒寫成功:
重新開機闆子或者選擇 1 : run app ,程式開始運作。