天天看點

痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  痞子衡主導的"學術"項目 《RT-UFL - 一個适用全平台i.MXRT的超級下載下傳算法設計》 v1.0 版釋出近 4 個月了,部分客戶已經在實際項目開發調試中用上了這個超級下載下傳算法,目前回報還可以,但這個超級下載下傳算法遠未到成熟狀态,痞子衡正在策劃 v2.0 版本。

RT-UFL v1.0下載下傳位址: https://github.com/JayHeng/RT-UFL/archive/refs/tags/v1.0.zip

  超級下載下傳算法 RT-UFL v1.0 版本主要針對 Segger J-Link 調試器,開發測試也都是在 J-Link Commander 和 J-Flash 軟體下進行的,但其實它也适用各大常用 IDE,今天我們就來聊聊它在 MCUXpresso IDE 下的使用:

  首先需要準備好測試環境,包含必要的軟體和硬體,痞子衡的環境如下:

內建開發環境: MCUXpresso IDE v11.4.0_6224,點此下載下傳 軟體開發包: SDK_2.10.0_EVKB-IMXRT1050(Toolchain需包含MCUXpresso IDE),點此下載下傳 軟體驅動: J-Link driver v6.86f,點此下載下傳 硬體工具: J-Link Plus調試器 硬體開發闆: MIMXRT1050-EVKB (Rev.A1)

  上述軟體環境裡,MCUXpresso IDE 版本與 SDK 軟體包版本之間有一定依賴關系(見下圖),但 J-Link 軟體驅動版本與 MCUXpresso IDE 版本沒有明确依賴關系。

痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  J-Link 軟體驅動不是一定限制在 v6.86f,隻是超級下載下傳算法 v1.0 是在這個版本下詳細測試的,其他 J-Link 版本也可能适合,具體需要進一步測試。

  第一步其實跟 MCUXpresso IDE 無關,因為是基于 J-Link 的超級下載下傳算法,是以要給 J-Link 軟體驅動先打個更新包,具體參照 《超級下載下傳算法RT-UFL v1.0釋出,附J-Link下安裝教程》 一文。

Note: MCUXpresso IDE 安裝過程中會順便在 C:\Program Files (x86)\SEGGER\JLink 路徑下安裝一個預設的 J-Link 驅動(版本不可控,應該是跟 MCUXpresso IDE 比對的),但為了避免不可預見的問題發生,最好自己手動安裝一個明确的 J-Link 驅動版本來使用(痞子衡安裝在了 C:\tools_mcu\SEGGER\JLink_V686f)。

  然後我們需要一個 MCUXpresso IDE 工程,參照 《MCUXpresso IDE下SDK工程導入與workspace管理機制》 一文,這裡我們導入了 \SDK_2.10.0_EVKB-IMXRT1050\boards\evkbimxrt1050\demo_apps\led_blinky 工程。

痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  前面講了,在安裝 MCUXpresso IDE 時會同時安裝一個預設 J-Link 驅動,MCUXpresso IDE 會預設調用這個驅動,我們需要在 MCUXpresso IDE 裡重設 J-Link Server 路徑,指向打了超級下載下傳算法的 J-Link 驅動。

Note: MCUXpresso IDE 安裝目錄 \MCUXpressoIDE_11.4.0_6224\ide\binaries\Flash 下自帶的 .cfg 格式下載下傳算法主要适用 CMSIS-DAP 型硬體仿真器,不可用于 J-Link 仿真器,在這點上 MCUXpresso IDE 與其他 IDE 設計不太一樣。
痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  現在可以将闆卡供上電,確定闆卡處于 NOR Flash 啟動模式(Boot Mode 以及 Boot Cfg 要設定正确),然後再檢查一下 MCUXpresso IDE 工程裡的 Flash 啟動頭是否與闆卡上的實際 Flash 型号相比對。

Note:要想在 IDE 設定的 Hardware Reset 複位類型下實作在 Flash 調試,上述條件必須要滿足,但如果改為 Software/Core Reset 類型,則闆卡啟動模式以及工程裡 Flash 啟動頭并不影響調試。
痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  還差最後一步就可以愉快地在 Flash 調試了,我們将 J-Link 仿真器連接配接上闆卡,點選左下角 J-Link 圖示進行調試會出現一個彈框,IDE 會自動發現可用的 J-Link 裝置,點選确認後會在工程目錄下生成一個 xxProject JLink Debug.launch 檔案,輕按兩下這個 .launch 檔案進入 J-Link 具體設定界面,這裡主要是要在 JLink Debugger 下的 Device 裡填入超級下載下傳算法代号(下拉選項裡沒有,需要手動輸入),然後就可以正常下載下傳調試了(如果調試不穩定,可嘗試降低 J-Link Speed)。

Note: 超級下載下傳算法具體代号詳見 C:\tools_mcu\SEGGER\JLink_V686f\JLinkDevices.xml 檔案,代号字尾 _L0 适用 QSPI 和 Octal Flash,代号字尾 _L1/L2 适用 Hyper Flash。
痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

文章會同時釋出到我的 部落格園首頁、CSDN首頁、知乎首頁、微信公衆号 平台上。

微信搜尋"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。

痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  最後歡迎關注痞子衡個人微信公衆号【痞子衡嵌入式】,一個專注嵌入式技術的公衆号,跟着痞子衡一起玩轉嵌入式。

痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用
痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用
痞子衡嵌入式:超級下載下傳算法RT-UFL v1.0在MCUXpresso IDE下的使用

  衡傑(痞子衡),目前就職于恩智浦MCU系統部門,擔任嵌入式系統應用工程師。

  專欄内所有文章的轉載請注明出處:http://www.cnblogs.com/henjay724/

  與痞子衡進一步交流或咨詢業務合作請發郵件至 [email protected]

  可以關注痞子衡的Github首頁 https://github.com/JayHeng,有很多好玩的嵌入式項目。

  關于專欄文章有任何疑問請直接在部落格下面留言,痞子衡會及時回複免費(劃重點)答疑。

  痞子衡郵箱已被私信擠爆,技術問題不推薦私信,堅持私信請先掃碼付款(5元起步)再發。