<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      痞子衡嵌入式:超級下載算法RT-UFL v1.0在IAR EW for Arm下的使用


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

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

      一、準備測試環境

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

      • 集成開發環境: IAR EW for Arm v8.50.6,點此下載
      • 軟件開發包: SDK_2.10.0_EVKB-IMXRT1050(Toolchain需包含IAR),點此下載
      • 軟件驅動: J-Link driver v6.86f,點此下載
      • 硬件工具: J-Link Plus調試器
      • 硬件開發板: MIMXRT1050-EVKB (Rev.A1)

        上述軟件環境里,IAR 版本與 SDK 軟件包版本之間沒有明確依賴關系,但 J-Link 軟件驅動版本與 IAR 版本之間有一些關聯,具體在下面 2.2 節里會提及。

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

      二、在IAR EW for Arm下使用步驟

      2.1 將超級下載算法包打進J-Link驅動

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

      • Note: IAR 安裝過程中會順便在 \IAR Systems\Embedded Workbench 8.50.6\arm\bin\ 路徑下安裝一個默認的 J-Link 驅動(版本不可控,應該是跟 IAR 版本匹配的),但為了避免不可預見的問題發生,最好自己手動安裝一個明確的 J-Link 驅動版本來使用(痞子衡安裝在了 C:\tools_mcu\SEGGER\JLink_V686f)。

      2.2 為IAR指定包含超級下載算法的J-Link驅動

        在默認情況下,所有 IAR 工程都統一使用 IAR 安裝目錄下自帶的 J-Link 軟件驅動及其下載算法(假定 App 工程選項設置里仿真器選擇的是 J-Link,且不用 IAR 下載算法),但是我們為了超級下載算法額外安裝了一個指定版本的 J-Link 軟件驅動(v6.86f),因此我們需要指定 IAR 去使用包含超級下載算法的 J-Link 驅動,這里不是在 App 工程選項里設置,而是需要借助 JLinkDLLUpdater.exe 工具。

        在我們額外安裝的包含超級下載算法的 C:\tools_mcu\SEGGER\JLink_V686f 目錄下,有一個名為 JLinkDLLUpdater.exe 的小工具,雙擊這個工具,便可看到其搜索到了當前 PC 環境下安裝的 IDE 列表,有我們正在使用的 IAR v8.50.6,勾選上 IAR 便能完成 J-Link 驅動的指定。

        其實痞子衡當前 PC 上安裝了兩個版本的 IAR,分別是 v8.50.6 和 v9.10.2,不過 J-Link v6.86f 版本下的 JLinkDLLUpdater.exe 僅識別出了 IAR v8.50.6,這意味著,如果你安裝的是 IAR v9.10.2,可能無法去指定使用 額外安裝的 J-Link v6.86f 版本驅動。后來痞子衡安裝了最新的 J-Link v7.56b,它下面的 JLinkDLLUpdater.exe 能將兩個版本的 IAR 都識別出,這就是文章前面提及的 J-Link 驅動版本與 IAR 版本的關聯限制。

      2.3 使用IAR打開一個SDK工程

        現在我們需要一個 IAR 工程,這里我們直接打開 \SDK_2.10.0_EVKB-IMXRT1050\boards\evkbimxrt1050\demo_apps\led_blinky 工程,注意將工程切換到 flexspi_nor build,即代碼 XIP 執行版本。

      2.4 確保板卡處于Flash啟動模式且SDK工程能夠XIP

        然后將板卡供上電,確保板卡處于 NOR Flash 啟動模式(Boot Mode 以及 Boot Cfg 要設置正確),然后再檢查一下 IAR 工程里的 Flash 啟動頭是否與板卡上的實際 Flash 型號相匹配。

      • Note:要想在 IDE 設置的 Hardware Reset 復位類型下實現在 Flash 調試,上述條件必須要滿足,但如果改為 Software/Core Reset 類型,則板卡啟動模式以及工程里 Flash 啟動頭并不影響調試。

      2.5 在SDK工程設置里使用J-Link下載算法

        IAR 支持非常多種類的硬件仿真器,這里我們首先需要在工程選項 Debugger/ Setup 下的 Driver 下拉菜單里選擇 J-Link/J-Trace,表明目標板卡上連接的是 J-Link 型硬件仿真器。

        然后就來到了全文中最關鍵的設置了,工程選項 Debugger/ Download 下的 Use flash loader(s) 這個選項默認是勾選的,即代表不管外面連接的是哪種硬件仿真器,統一使用 IAR 目錄下自帶的 .out 下載算法,但是我們一定要將這個勾選給去掉,因為我們要用指定的 J-Link 軟件驅動下的超級下載算法。

      • Note: IAR 安裝目錄 \IAR Systems\Embedded Workbench 8.50.6\arm\config\flashloader\NXP 下自帶的 .out 格式下載算法同時適用 CMSIS-DAP 型和 J-Link 型硬件仿真器,因此哪怕連接的是 J-Link 仿真器,也可以有兩種不同類型下載算法選擇,這點上 IAR 與上一篇介紹的 MCUXpresso IDE 算法使用設計不太一樣。

      2.6 選擇合適的超級下載算法進行在線下載調試

        還差最后一步就可以愉快地在 Flash 調試了,我們將 J-Link 仿真器連接上板卡,點擊 IAR 菜單欄 Download and Debug 按鈕進行調試,發現竟然報錯了,似乎有下載過程,但無法單步跑。這其實是可以理解的,因為我們還沒有選擇合適的超級下載算法,至少在 IAR 工程選項里沒有顯式的去選。

        其實 IAR 工程設置里并沒有給我們主動選擇 J-Link 下載算法的機會,它自己偷偷通過工程選項里的 General Options/Target 下的 Device 設置,根據 MIMXRT1052xxx6B 值到 C:\tools_mcu\SEGGER\JLink_V686f\JLinkDevices.xml 文件中做了匹配,自動選擇了第一個匹配到的 MIMXRT1050_UFL_L0 算法,但其實本次測試我們需要的是 MIMXRT1050_UFL_L1 算法。

      • Note: 超級下載算法具體代號詳見 C:\tools_mcu\SEGGER\JLink_V686f\JLinkDevices.xml 文件,代號后綴 _L0 適用 QSPI 和 Octal Flash,代號后綴 _L1/L2 適用 Hyper Flash。

        如何解決選擇具體超級下載算法的問題?當然根據情況動態調整 C:\tools_mcu\SEGGER\JLink_V686f\JLinkDevices.xml 文件內容是可行的。比如可以將 MIMXRT1050_UFL_L1 算法 <device> 描述塊移到 MIMXRT1050_UFL_L0 算法 <device> 描述塊上面,或者保持它們的位置不變,但臨時將 MIMXRT1050_UFL_L0 算法 <device> 描述塊里 Aliases 表達式里的 MIMXRT1052xxx6B 值去掉。但是這種方法太不友好了,有沒有更便捷的方式?

        既然痞子衡這么問了,那肯定是有啦,當在 IAR 里用 J-Link 調試過一次,無論成功與否,都會在工程目錄下(\SDK_2.10.0_EVKB-IMXRT1050\boards\evkbimxrt1050\demo_apps\led_blinky\iar\settings)生成一個 xxProject_flexspi_nor_debug.jlink 文件,用文本編輯器打開這個 .jlink 文件,將 Override 改為 1,然后設置 Device 的值為超級下載算法代號就可以啦?,F在看看你是不是可以正常下載調試了。

      Override = 1
      Device="MIMXRT1050_UFL_L1"
      

      歡迎訂閱

      文章會同時發布到我的 博客園主頁、CSDN主頁、知乎主頁、微信公眾號 平臺上。

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

      posted @ 2021-10-23 16:14  痞子衡  閱讀(591)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 中文字幕久区久久中文字幕| 无码人妻aⅴ一区二区三区蜜桃| 亚洲AV午夜电影在线观看 | 国产精品免费久久久免费| 日本免费精品| 色国产视频| 精品人妻无码一区二区三区| 欧洲精品码一区二区三区| 国产精品久久无中文字幕| 亚洲狠狠婷婷综合久久久| a级国产乱理伦片在线观看al | 欧美午夜精品久久久久久浪潮 | 狠狠躁天天躁中文字幕无码| 免费人成网上在线观看网址| 国产桃色在线成免费视频| 一区二区偷拍美女撒尿视频| 国产精品无码无卡在线播放| 超清无码一区二区三区| 韩国美女福利视频一区二区| 亚洲毛片多多影院| 亚洲精品电影院| 伊人久久大香线蕉综合观| 日本欧美大码aⅴ在线播放| 亚洲男人天堂一级黄色片| 亚洲精品日本一区二区| 日本无码欧美一区精品久久| 成人AV专区精品无码国产| 欧美福利在线| 青青草国产自产一区二区| 亚洲免费网站观看视频| 亚洲欧美综合人成在线| 欧美韩中文精品有码视频在线| 亚洲AVAV天堂AV在线网阿V| 国产95在线 | 欧美| 久久九九久精品国产免费直播| 亚洲最大成人av免费看| 精品久久久久久无码中文野结衣 | 久久青青草原精品国产app| 日本一区二区在线高清观看| 中文字幕日韩国产精品| 久久男人av资源站|