研發(fā)課堂丨飛凌iMXRT1052開發(fā)板使用IAP在線升級APP的操作方法

原創(chuàng) 2020-04-24 14:05:00 OK1052 C iMXRT1052 飛凌 操作方法

飛凌OK1052-C開發(fā)板燒寫方式及工具多種多樣,現(xiàn)在我們先來總結(jié)一下:


1、 SWD方式燒寫,使用DAP仿真器,上位機(jī)使用keil MDK點擊download下載。

2、 USB方式燒寫,使用USB數(shù)據(jù)線連接板子和PC機(jī),上位機(jī)有三個燒寫工具:

1) NXP MCU Boot Utility工具。

2) RT-flash工具。

3) MfgTool2工具。

3、 SD方式卡燒寫,將要燒寫的鏡像放入SD卡,從SD卡啟動燒寫程序進(jìn)行燒寫。

當(dāng)然除了以上我們總結(jié)的幾點,OK1052-C還有其他燒寫方式,這里不再一一列舉。這幾種方式各有千秋也各有不便,具體優(yōu)缺點需要根據(jù)大家的應(yīng)用環(huán)境決定。


一、簡單介紹一下IAP


今天給大家介紹一下,如何通過IAP方式進(jìn)行程序燒寫。目前OK1052-C IAP功能,在設(shè)計在設(shè)計固件程序時編寫兩個項目代碼,第一個項目程序bootloder不執(zhí)行正常的功能操作,而只是通過UART接收鏡像數(shù)據(jù),執(zhí)行對第二部分代碼的更新;第二個項目代碼app才是真正的功能代碼。這兩部分項目代碼都同時燒錄在 User Flash 中,當(dāng)芯片上電后,首先是第一個項目代碼bootloder開始運(yùn)行,它作如下操作:


1) 串口等待輸入space”鍵,等待超時時間1000ms;


串口打印信息.jpg 

2) 如果沒有接收到space”字符,則跳轉(zhuǎn)到第二部分代碼執(zhí)行app


3) 如果接收到該字符,進(jìn)入選擇菜單。


選擇菜單.jpg 


4) 選擇2執(zhí)行更新操作


打印信息.jpg 


5) 選擇鏡像,并更新完成之后,再次進(jìn)入菜單,可選擇1運(yùn)行新的app,也可選擇3重新啟動系統(tǒng):


菜單欄.jpg 


使用IAP方式進(jìn)行程序燒寫,就省去了頻繁使用仿真器連接燒寫的麻煩,也不用像USB燒寫那么繁瑣。不管是開發(fā)階段還是 維護(hù)階段,都能輕松升級。


二、具體操作,實現(xiàn)APP升級


OK1052-C IAP 主要使用串口通過Ymodem協(xié)議進(jìn)行鏡像數(shù)據(jù)傳輸,因為secureCRT工具有Ymodem傳輸功能,所以我們使用secureCRT工具作為串口終端。

步驟一:燒寫BootLoder鏡像。

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

步驟二:制作APP鏡像

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

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


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


打開\boards\evkbimxrt1050\driver_examples\gpio\led_output\mdk\下工程。

路徑.jpg 

選擇XIP工程:

工程文件.jpg 


然后進(jìn)入魔術(shù)棒—link配置--Edit

配置.jpg 


打開MIMXRT1052xxxxx_flexspi_nor.scf文件作如下更改:


代碼.jpg



















注釋掉以下代碼:


代碼 


然后進(jìn)入魔術(shù)棒—user,在Run#1中加入命令以生成.bin文件:

#K\ARM\ARMCC\bin\fromelf.exe --bincombined --output=.\DebugInFlash\@L.bin !L

 

文件 


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


步驟三:IAP燒寫APP鏡像

BootLoder鏡像燒寫完成之后,打開PC機(jī)軟件secureCRT,配置好串口:

串口 


重啟板子,通過串口打印信息,可以看到

打印信息 


然后按空格鍵,可以進(jìn)入菜單:


菜單欄 


選擇2 update app 更新APP鏡像:


串口信息 

 

軟件菜單欄 


選擇要燒寫的鏡像:


鏡像 


燒寫成功:


成功界面 

重啟板子或者選擇1run app,程序開始運(yùn)行。

相關(guān)產(chǎn)品 >

  • FET1052-C核心板

    iMXRT核心板采用NXP iMXRT1050系列的i.MX RT1052跨界處理器設(shè)計,兼容MCU與MPU各自領(lǐng)域特點。iMXRT1052主頻高達(dá)600MHz是單片機(jī)界的性能怪獸。iMXRT1052作為一款跨界核心板,采用 Cortex-M7架構(gòu)微控制器,主頻卻高達(dá)600MHz,高密度的512KB TCM SRAM和16MB的高速SDRAM,超快的實時響應(yīng),超低的功耗,超強(qiáng)處理性能賦予了RT1052視頻編解碼能力。


    了解詳情
    FET1052-C核心板
  • OK1052-C開發(fā)板

    飛凌提供的i.MXRT105x系列單片機(jī),iMXRT1052單片機(jī)基于NXP Cortex-M7 i.MX RT1052跨界處理器設(shè)計,底板+核心板分離結(jié)構(gòu),開發(fā)更簡單,imxrt1052核心板僅售68元,歡迎致電400-699-6866咨詢。推薦iMXRT單片機(jī),性價比高。 了解詳情
    OK1052-C開發(fā)板

推薦閱讀 換一批 換一批