痞子衡嵌入式:超級下載演算法RT-UFL v1.0在恩智浦MCUXpresso IDE下的使用
- 2021 年 10 月 20 日
- 筆記
- D2.單片機i.MXRT-CM7
痞子衡主導的”學術”項目 《RT-UFL – 一個適用全平台i.MXRT的超級下載演算法設計》 v1.0 版發布近 4 個月了,部分客戶已經在實際項目開發調試中用上了這個超級下載演算法,目前回饋還可以,但這個超級下載演算法遠未到成熟狀態,痞子衡正在策劃 v2.0 版本。
- RT-UFL v1.0下載地址: //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下使用步驟
2.1 將超級下載演算法包打進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)。
2.2 使用MCUXpresso IDE導入一個SDK工程
然後我們需要一個 MCUXpresso IDE 工程,參照 《MCUXpresso IDE下SDK工程導入與workspace管理機制》 一文,這裡我們導入了 \SDK_2.10.0_EVKB-IMXRT1050\boards\evkbimxrt1050\demo_apps\led_blinky 工程。
2.3 在SDK工程設置里指定包含超級下載演算法的J-Link驅動
前面講了,在安裝 MCUXpresso IDE 時會同時安裝一個默認 J-Link 驅動,MCUXpresso IDE 會默認調用這個驅動,我們需要在 MCUXpresso IDE 里重設 J-Link Server 路徑,指向打了超級下載演算法的 J-Link 驅動。
2.4 確保板卡處於Flash啟動模式且SDK工程能夠XIP
現在可以將板卡供上電,確保板卡處於 NOR Flash 啟動模式(Boot Mode 以及 Boot Cfg 要設置正確),然後再檢查一下 MCUXpresso IDE 工程里的 Flash 啟動頭是否與板卡上的實際 Flash 型號相匹配。
- Note:要想在 IDE 設置的 Hardware Reset 複位類型下實現在 Flash 調試,上述條件必須要滿足,但如果改為 Software/Core Reset 類型,則板卡啟動模式以及工程里 Flash 啟動頭並不影響調試。
2.5 選擇合適的超級下載演算法進行在線下載調試
還差最後一步就可以愉快地在 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。
歡迎訂閱
文章會同時發布到我的 部落格園主頁、CSDN主頁、知乎主頁、微信公眾號 平台上。
微信搜索”痞子衡嵌入式“或者掃描下面二維碼,就可以在手機上第一時間看了哦。



