加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • 一、測(cè)試準(zhǔn)備
    • 二、在MCUXpresso IDE下調(diào)試
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

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

07/30 08:22
2563
閱讀需 9 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家分享的是MCUXpresso IDE下在線聯(lián)合調(diào)試i.MXRT1170雙核工程的三種方法

兩年前痞子衡寫(xiě)過(guò)一篇《i.MXRT1170下在線聯(lián)合調(diào)試雙核工程的三種方法(IAR篇)》,那篇文章詳細(xì)介紹了 IAR 下調(diào)試 RT1170 雙核工程的幾種方法?,F(xiàn)如今,免費(fèi)的 MCUXpresso IDE 用戶越來(lái)越多,而且說(shuō)實(shí)話,MCUXpresso IDE 也確實(shí)功能越來(lái)越完善,日常嵌入式開(kāi)發(fā)的幾乎所有需求都能夠滿足。今天痞子衡就繼續(xù)給大家介紹 MCUXpresso IDE 下雙核工程聯(lián)調(diào)的三種方法:

一、測(cè)試準(zhǔn)備

按 《i.MXRT1170下在線聯(lián)合調(diào)試雙核工程的三種方法(IAR篇)》 一文里第一節(jié)的測(cè)試準(zhǔn)備,痞子衡這次的環(huán)境如下:

 

    集成開(kāi)發(fā)環(huán)境:MCUXpresso IDE v11.10.x,點(diǎn)此下載軟件開(kāi)發(fā)包:SDK_2_16_000_MIMXRT1170-EVKB(Toolchain要包含MCUXpresso IDE),點(diǎn)此下載軟件驅(qū)動(dòng):J-Link driver v7.96k,點(diǎn)此下載硬件工具:J-Link Plus調(diào)試器硬件開(kāi)發(fā)板:MIMXRT1170-EVKB (Rev.A),含板載 DAP-Link 調(diào)試器

二、在MCUXpresso IDE下調(diào)試

2.1 通用辦法:雙核工程無(wú)關(guān)聯(lián),調(diào)試器分別加載

第一種方法依舊是單純借助外部調(diào)試器來(lái)做加載,主核工程和從核工程之間無(wú)任何依賴關(guān)系(一般情況下主核是 XIP 工程,從核是 Non-XIP 工程)。我們選擇 SDK 包里如下兩個(gè) hello_world 普通工程來(lái)做測(cè)試(SDK 包里并沒(méi)有現(xiàn)成的 MCUXpresso IDE 工程文件,需要自己導(dǎo)出,詳情參考 《MCUXpresso IDE下SDK工程導(dǎo)入與workspace管理機(jī)制》 一文):

主核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkbmimxrt1170demo_appshello_worldcm7
從核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkbmimxrt1170demo_appshello_worldcm4

上次測(cè)試 IAR 工具鏈時(shí),SDK 版本還是 2.11,如今已經(jīng)演化到了 2.16,現(xiàn)在配套腳本設(shè)計(jì)得更完善了,主核工程和從核工程下載先后順序無(wú)限制。痞子衡使用了板載 DAP-Link 調(diào)試器分別調(diào)試雙核工程,過(guò)程非常絲滑。這主要得益于如下兩個(gè) .scp 腳本文件(完成主從核連接與激活工作):

有小伙伴可能會(huì)疑惑,這兩個(gè) .scp 文件到底是放在哪里的?因?yàn)樵?MCUXpresso IDE 安裝目錄下以及導(dǎo)出的 hello world 工程目錄下都找不到它們的身影,其實(shí)它們就藏在安裝 MCUXpresso IDE 時(shí)自動(dòng)同步安裝的 LinkServer 驅(qū)動(dòng)里面(LinkServer_1.6.114binariesScripts),這些腳本是共用的,如果你想修改為專用腳本,可以拷貝到工程目錄下,然后啟用下圖里的 Custom Path。

2.2 專用方法:雙核工程有關(guān)聯(lián),IDE多核組件鏈接,主核加載從核

第二種方法需要借助主核代碼來(lái)給從核做加載,此時(shí)主核工程和從核工程之間有互相鏈接關(guān)系(依舊為主核 XIP 工程,從核 Non-XIP 工程),這里需要借助 MCUXpresso IDE 軟件里自帶的多核組件。我們首先從 SDK 里導(dǎo)出 hello world 多核例程:

主核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkmimxrt1170multicore_exampleshello_worldcm7
從核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkmimxrt1170multicore_exampleshello_worldcm4

可以分別打開(kāi)主核和從核例程的工程選項(xiàng),找到 Multicore 設(shè)置,可以看到從核配置為 M4SLAVE,主核勾選了 M4SLAVE 工程對(duì)應(yīng)的 axf 文件路徑,此為兩個(gè)工程的鏈接關(guān)系:

至于從核代碼加載過(guò)程,可以打開(kāi)主核工程的鏈接文件,相比一般獨(dú)立工程鏈接文件,其多了對(duì)從核工程編譯出來(lái)的二進(jìn)制數(shù)據(jù)(包含text和data)的鏈接處理,拷貝動(dòng)作是在主核工程 startup_mimxrt1176_cm7.c 文件 ResetISR() 函數(shù)中的 data bss 段初始化過(guò)程中一起完成的,激活從核動(dòng)作則是 main 函數(shù)里 MCMGR_StartCore() 函數(shù)實(shí)現(xiàn)的。

2.3 通用方法:雙核工程無(wú)關(guān)聯(lián),主核激活從核

目前 v2.16 SDK 包里相比之前增加了如下兩個(gè) ?hello_world_secondary_core_boot 多核例程,以往的多核例程,從核均是 Non-XIP 工程,而這個(gè)新增例程里從核工程也是 XIP 例程:

主核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkmimxrt1170demo_appshello_world_secondary_core_bootcm7
從核例程導(dǎo)出源路徑:SDK_2_16_000_MIMXRT1170-EVKBboardsevkmimxrt1170demo_appshello_world_secondary_core_bootcm4

因?yàn)橹鲝暮斯こ叹?XIP 工程,在調(diào)試時(shí)需要先將從核工程下載進(jìn) Flash,然后再下載主核工程進(jìn) Flash 并且沿用主核工程里的 XIP 頭做啟動(dòng)配置。因?yàn)榇a加載是調(diào)試器完成的,所以兩個(gè)工程間并無(wú)直接關(guān)聯(lián),不過(guò)因?yàn)樽罱K還是需要主核執(zhí)行代碼去完成從核激活工作,因此從核程序存放地址(CORE1_BOOT_ADDRESS)是需要 hardcode 在主核代碼里的。

至此,MCUXpresso IDE下在線聯(lián)合調(diào)試i.MXRT1170雙核工程的三種方法痞子衡便介紹完畢了,掌聲在哪里~~~

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
DSC1121CM1-050.0000 1 Microchip Technology Inc OSC MEMS 50.000MHZ CMOS SMD
$1.56 查看
S25FL512SAGBHIA10 1 Cypress Semiconductor Flash, 128MX4, PBGA24, FBGA-24

ECAD模型

下載ECAD模型
$8.07 查看
SN74AHC1G14DCKT 1 Texas Instruments Single 2-V to 5.5-V inverter with Schmitt-Trigger inputs 5-SC70 -40 to 125

ECAD模型

下載ECAD模型
$0.9 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

碩士畢業(yè)于蘇州大學(xué)電子信息學(xué)院,目前就職于恩智浦(NXP)半導(dǎo)體MCU系統(tǒng)部門,擔(dān)任嵌入式系統(tǒng)應(yīng)用工程師。痞子衡會(huì)定期分享嵌入式相關(guān)文章