0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

MCUXpresso IDE在Flash調(diào)試的注意事項

454398 ? 來源:alpha007 ? 作者:alpha007 ? 2022-12-23 13:53 ? 次閱讀

大家好,我是痞子衡,是正經(jīng)搞技術的痞子。今天痞子衡給大家介紹的是 MCUXpresso IDE 下使用 J-Link 下載算法在 Flash 調(diào)試注意事項。

介紹一下如何使用新生成的 flash 算法文件配合 J-Link 調(diào)試器在 MCUXpresso IDE 下 XIP 調(diào)試(基于 i.MXRT500)。

1、準備測試環(huán)境

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

集成開發(fā)環(huán)境:MCUXpresso IDE v11.2.0_4120

軟件開發(fā)包:SDK_2.8.0_EVK-MIMXRT595_PRC(Toolchain 需包含 MCUXpresso IDE)

軟件驅(qū)動:J-Link driver v6.72b

硬件工具:J-Link Plus 調(diào)試器

硬件開發(fā)板:MIMXRT595-EVK (Rev.C1)

其中集成開發(fā)環(huán)境和軟件開發(fā)包需要有如下版本對應關系,因為 MCUXpresso IDE 是恩智浦基于 GCC 和 Eclipse 而設計的免費 IDE,而且主要是為恩智浦 MCU 設計的,所以跟恩智浦 MCU SDK 包有一定的捆綁關系。

2、新生成 flash 算法

我們測試的板卡是 MIMXRT595-EVK (Rev.C1),這個板卡默認是在 FlexSPI0 上連接的八線 Flash(MX25UM51345),J-Link 驅(qū)動里如果支持 i.MXRT500 的話默認 flash 算法也是這個八線 flash,為了測試新生成的 flash 算法,我們將板卡 rework 一下,F(xiàn)lexSPI0 連接到四線 Flash(IS25WP064)。

我們現(xiàn)在需要為這個四線 Flash(IS25WP064)做一個新 flash 算法,打開痞子衡的 github 開源項目如下源工程,確保工程添加的 is25wp064 相關的源文件,然后編譯生成新的 MIMXRT5XX_FLEXSPI.FLM(即 flash 算法文件)。

算法源工程:https://github.com/JayHeng/imxrt-tool-flash-algo/tree/master/boards/nxp_evkmimxrt595_rev.a-c/flash_algo_b0_silicon/Keil_JLink

有了新 flash 算法文件,將其放到 /SEGGER/JLink_V672b/Devices/NXP/iMXRT5xx 路徑下,為了跟默認 flash 算法區(qū)分開來,可以將其重新命名為 MIMXRT5XX_FLEXSPI_IS25WP064.FLM,順便更新 JLinkDevices.xml 文件。

將板卡供電,連上 Jlink 調(diào)試器,使用 JlinkCommander 的 loadbin 命令試一下新 flash 算法是否有效,在確保新 flash 算法沒問題時再進入 IDE 調(diào)試。

3、進入 MCUXpresso IDE 調(diào)試

3.1 導入 SDK 及打開示例工程

打開 MCUXpresso IDE,默認 Installed SDKs 界面框里沒有 RT500,我們直接將下載好的 SDK_2.8.0_EVK-MIMXRT595_PRC.zip 包拖到 Installed SDKs 界面框中即可。

這時候 Installed SDKs 界面框里可以看到 RT500,選中它然后繼續(xù)操作來導入 example,我們就選 demo_apps 下的 hello_world 例程,編譯這個工程確保沒問題。

3.2 更新 J-Link Server 路徑

在安裝 MCUXpresso IDE 時會同時安裝一個默認 Jlink 驅(qū)動(一般路徑在 C:/Program Files (x86)/SEGGER/JLink),這個驅(qū)動版本不一定新,MCUXpresso 會默認調(diào)用這個驅(qū)動,但很多時候我們都是手動安裝新 Jlink 驅(qū)動來使用的(痞子衡裝在了 C:/tools_mcu/SEGGER/JLink_V672b),前面我們新生成的 flash 算法也是放在手動安裝的 Jlink 驅(qū)動目錄下的,因此我們需要在 MCUXpresso 里重設 J-Link Server 路徑,指向手動安裝的 Jlink 驅(qū)動。

3.3 借助 J-Link 在線調(diào)試

看起來一切就緒了,讓我們開始在 flash 調(diào)試吧,點擊 Debug 按鈕,會看到 MCUXpresso 彈出了調(diào)試器類型選擇,并且識別到了我們連接的 J-Link,點擊 OK 確認。

如果出現(xiàn)下載失敗,需要查看一下自動生成的 jlink 的 .launch 文件里的設置,尤其是下面的 Device 設置,要確保與前面更新的 JLinkDevices.xml 文件里改動的腳本代碼里 Name 一欄相一致。

這時候可以看到 MCUXpresso 調(diào)用了 J-Link 驅(qū)動完成了代碼燒寫(這時候去讀 flash,里面的內(nèi)容是燒錄正確的),但是界面并沒有停在 main 函數(shù)里,并且沒法單步調(diào)試,這是為什么?

3.4 滿足 MCUXpresso 調(diào)試流程

然后痞子衡去咨詢了 MCUXpresso IDE 研發(fā)團隊,得知它默認的調(diào)試流程跟一般的通用 IDE(Keil,IAR)不太一樣,一般的 IDE 可以直接引導 App 啟動來調(diào)試,但 MCUXpresso IDE 不主動引導 App,而是復位后讓 App 自然啟動,然后嘗試 Attach 上去接管調(diào)試,所以根據(jù)這個流程,我們需要做兩點必要的改動:

更新 flash_config 頭(將 hyper flash 配置改為 QSPI Flash 配置),需要與板卡連接的 flash 相匹配

設置 ISP 模式為從 Flash 啟動,保證 reset 之后 ROM 能引導 App 從 Flash 正常啟動

改動完之后,我們終于可以愉快地單步調(diào)試了。

至此,MCUXpresso IDE 下使用 J-Link 下載算法在 Flash 調(diào)試注意事項痞子衡便介紹完畢了,掌聲在哪里~~~

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16804

    瀏覽量

    349393
  • FlaSh
    +關注

    關注

    10

    文章

    1610

    瀏覽量

    147573
  • 調(diào)試
    +關注

    關注

    7

    文章

    565

    瀏覽量

    33838
收藏 人收藏

    評論

    相關推薦

    繞線電感定制的注意事項

    電子發(fā)燒友網(wǎng)站提供《繞線電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-20 11:24 ?0次下載

    調(diào)試SsitaraAM2x單片機注意事項

    電子發(fā)燒友網(wǎng)站提供《調(diào)試SsitaraAM2x單片機注意事項.pdf》資料免費下載
    發(fā)表于 09-11 14:13 ?0次下載
    <b class='flag-5'>調(diào)試</b>SsitaraAM2x單片機<b class='flag-5'>注意事項</b>

    共模電感定制的注意事項

    電子發(fā)燒友網(wǎng)站提供《共模電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-04 11:47 ?0次下載

    LiFePO4設計注意事項

    電子發(fā)燒友網(wǎng)站提供《LiFePO4設計注意事項.pdf》資料免費下載
    發(fā)表于 09-03 09:24 ?0次下載
    LiFePO4設計<b class='flag-5'>注意事項</b>

    MCUXpresso IDE下在線聯(lián)合調(diào)試雙核MCU工程的三種方法

    大家好,我是痞子衡,是正經(jīng)搞技術的痞子。今天痞子衡給大家分享的是MCUXpresso IDE下在線聯(lián)合調(diào)試i.MXRT1170雙核工程的三種方法。
    的頭像 發(fā)表于 08-08 15:18 ?367次閱讀
    <b class='flag-5'>MCUXpresso</b> <b class='flag-5'>IDE</b>下在線聯(lián)合<b class='flag-5'>調(diào)試</b>雙核MCU工程的三種方法

    FMD LINK 使用注意事項

    電子發(fā)燒友網(wǎng)站提供《FMD LINK 使用注意事項.pdf》資料免費下載
    發(fā)表于 05-06 10:11 ?0次下載

    浪涌抑制器的應用及注意事項?

    浪涌抑制器的應用及注意事項?|深圳比創(chuàng)達電子
    的頭像 發(fā)表于 01-19 09:55 ?629次閱讀
    浪涌抑制器的應用及<b class='flag-5'>注意事項</b>?

    測速電機: 常見6大注意事項

    測速電機: 常見6大注意事項!測速電機是一種用于測量物體運動速度的設備,廣泛應用于工業(yè)生產(chǎn)和科學研究中。測速電機常見的6大注意事項以確保安全和準確性。
    的頭像 發(fā)表于 01-11 10:53 ?383次閱讀
    測速電機: 常見6大<b class='flag-5'>注意事項</b>

    霍爾元件使用的注意事項

    霍爾元件使用的注意事項? 霍爾元件是一種常見的電子元件,主要用于測量和檢測磁場的變化。它具有靈敏度高、響應速度快、耐磁場干擾等優(yōu)點,各種應用中得到廣泛使用。然而,為了確?;魻栐恼9ぷ骱脱娱L其
    的頭像 發(fā)表于 12-18 14:56 ?1128次閱讀

    電流互感器的使用注意事項

    當談到電流互感器的使用時,有一些重要的注意事項需要我們牢記。本文中,我們將探討這些注意事項,為您提供詳細和全面的信息。
    的頭像 發(fā)表于 12-15 10:34 ?1221次閱讀
    電流互感器的使用<b class='flag-5'>注意事項</b>

    輕負載時開關元件工作相關的注意事項

    輕負載時開關元件工作相關的注意事項
    的頭像 發(fā)表于 12-14 15:43 ?391次閱讀
    輕負載時開關元件工作相關的<b class='flag-5'>注意事項</b>

    聯(lián)軸器使用有哪些注意事項

    聯(lián)軸器實際應用中根據(jù)所傳遞轉(zhuǎn)矩大小可分為重型、中型、小型和輕型。那么怎么選擇合適聯(lián)軸器,使用的時候又有哪些注意事項呢?
    發(fā)表于 11-30 09:21 ?836次閱讀
    聯(lián)軸器使用有哪些<b class='flag-5'>注意事項</b>?

    VGA OUT 的PCB設計注意事項

    VGA OUT 的PCB設計注意事項
    的頭像 發(fā)表于 11-23 09:04 ?735次閱讀

    直線導軌自動鎖螺絲機的作用及注意事項

    直線導軌自動鎖螺絲機的作用及注意事項
    的頭像 發(fā)表于 11-22 17:40 ?506次閱讀
    直線導軌<b class='flag-5'>在</b>自動鎖螺絲機的作用及<b class='flag-5'>注意事項</b>

    使用IAR IDE仿真RL78內(nèi)置硬件乘法器和除法器注意事項

    使用IAR IDE仿真RL78內(nèi)置硬件乘法器和除法器注意事項
    的頭像 發(fā)表于 10-30 17:04 ?1001次閱讀
    使用IAR <b class='flag-5'>IDE</b>仿真RL78內(nèi)置硬件乘法器和除法器<b class='flag-5'>注意事項</b>