新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 米爾基于NXP i.MX 93開(kāi)發(fā)板的M33處理器應(yīng)用開(kāi)發(fā)筆記

米爾基于NXP i.MX 93開(kāi)發(fā)板的M33處理器應(yīng)用開(kāi)發(fā)筆記

作者: 時(shí)間:2024-07-03 來(lái)源:EEPW 收藏


本文引用地址:http://m.butianyuan.cn/article/202407/460634.htm

1.概述

本文主要介紹核的兩種工程調(diào)試開(kāi)發(fā),第一種方式是通過(guò)板子自帶的固件進(jìn)行開(kāi)發(fā),第二種方式是使用 IAR Embedded Workbench 來(lái)構(gòu)建可移植的Freertos文件進(jìn)行開(kāi)發(fā)。

2.硬件資源

●   MYD-LMX9X 開(kāi)發(fā)板(基于 i開(kāi)發(fā)板)

1720015035263243.png

3.軟件資源

●   Windows7及以上版本

●   軟件 :IAR Embedded Workbench

4.板載固件調(diào)試

4.1環(huán)境準(zhǔn)備

在A55 Debug(J14)和 Debug(J15)上分別接上串口,我這里COM25連接A55核,COM7接的M33核,上電開(kāi)機(jī)進(jìn)入系統(tǒng),在目錄/run/media/root-mmcblk0p2/lib/firmware下有調(diào)試M33核的五個(gè)固件,如圖4-1所示。

1720015063808528.png

圖4-1 固件圖

接下來(lái)本章將以str_echo為例進(jìn)行調(diào)試。

4.2調(diào)試

首先將固件加載到開(kāi)發(fā)板當(dāng)中,然后將M33核打開(kāi),命令如下

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# echo imx93-11x11-evk_m33_TCM_rpmsg_lite_str_echo_rtos.elf > /sys/devices/platform/imx93-cm33/remoteproc/remoteproc0/firmware

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# echo start > /sys/devices/platform/imx93-cm33/remoteproc/remoteproc0/state

此時(shí)M33的終端COM7口會(huì)出現(xiàn)打印如下

Connecting to COM7...

Connected.

RPMSG String Echo FreeRTOS RTOS API Demo...

Nameservice sent, ready for incoming messages...

Get Message From Master Side : "hello world!" [len : 12]

此時(shí)還不能發(fā)送字符,還需要將驅(qū)動(dòng)裝好命令如下

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# modprobe imx_rpmsg_tty

[  272.516722] imx_rpmsg_tty virtio1.rpmsg-virtual-tty-channel.-1.30: new channel: 0x400 -> 0x1e!

[  272.526155] Install rpmsg tty driver!

此時(shí)就能看到目錄/dev下多了一個(gè)ttyRPMSG30,可以通過(guò)這個(gè)端口向M33核發(fā)送字符串

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# echo 1234 > /dev/ttyRPMSG30

然后在M33串口端接收到字符

Connecting to COM7...

Connected.

RPMSG String Echo FreeRTOS RTOS API Demo...

Nameservice sent, ready for incoming messages...

Get Message From Master Side : "hello world!" [len : 12]

Get Message From Master Side : "1234" [len : 4]

Get New Line From Master Side

4.3切換固件

如果想要切換固件必須先暫停M33核,命令如下

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# echo stop > /sys/devices/platform/imx93-cm33/remoteproc/remoteproc0/state

[ 1956.373753] imx_rpmsg_tty virtio1.rpmsg-virtual-tty-channel.-1.30: rpmsg tty driver is removed

[ 1956.384837] remoteproc remoteproc0: stopped remote processor imx-rproc

然后才能往板子里裝固件,如4.2章節(jié)所示。

5.IAR Embedded Workbench調(diào)試M33

5.1.環(huán)境準(zhǔn)備

下載SDk,下載地址為示例工程 | MCUXpresso SDK構(gòu)建工具 (nxp.com)

1720015092412088.png

圖5-1 SDK示例工程

安裝IAR Embedded Workbench,安裝地址為IAR Embedded Workbench for Arm - Free trial version | IAR

5.2. 導(dǎo)入工程文件

打開(kāi) IAR Embedded Workbench 軟件,點(diǎn)擊界面 [File]>[Open Workspace] 并選擇導(dǎo)入所下載的sdk,我這里選擇的是freertos_hello,在下載目錄MCIMX93-EVK-freertos_hellofreertos_hello下的freertos_hello.eww,如下圖所示

1720015139668285.png

圖5-2 選擇導(dǎo)入文件

選擇完之后,然后點(diǎn)擊[打開(kāi)]導(dǎo)入,然后確認(rèn),即導(dǎo)入成功。

5.3. 環(huán)境配置

●   選擇芯片

右鍵單擊freertos_hello-debug文件夾選擇Options,在General Options一欄中點(diǎn)擊Target選擇選擇芯片,這里沒(méi)有9352芯片所以選擇 MIMXRT595S_M33,如下圖所示

1720015160863496.png

圖5-3 選擇芯片

●   選擇庫(kù)函數(shù)

1720015180823043.png

圖5-4 選擇庫(kù)函數(shù)

●   設(shè)置優(yōu)化等級(jí)

1720015199334187.png

圖5-4 設(shè)置優(yōu)化等級(jí)

●   選擇下載器

1720015215963460.png

圖5-5 選擇下載器

●   設(shè)置輸出文件和輸出名字

1720015235374671.png

圖5-6 設(shè)置輸出文件和輸出名字

5.3.編譯

右鍵單擊freertos_hello-debug文件夾先點(diǎn)擊make,成功后點(diǎn)擊RebuildAll。

1720015254566210.png

圖5-7 構(gòu)建項(xiàng)目

成功后在目錄MCIMX93-EVK-freertos_hellofreertos_helloDebug下生成hello-world.bin文件。

1720015285167970.png

圖5-8 生成bin文件

5.4.燒錄

這里我們選擇SD卡燒錄,首先把生成的hello-world.bin文件放到SD卡里面,選擇SD卡啟動(dòng)(具體參考),分別接上A55 Debug串口J14)和M33 Debug串口(J15),本章所示COM25接的A55,COM7接的M33,在上電之后A55端進(jìn)入uboot,輸入以下指令

COM25:

Hit any key to stop autoboot:  0

u-boot=>

u-boot=>  fatload mmc 1:1 80000000 hello-world.bin; cp.b 0x80000000 0x201e0000 0x1014424 bytes read in 3 ms (4.6 MiB/s)

u-boot=> bootaux 0x1ffe0000 0

## Starting auxiliary core addr = 0x1FFE0000...

此時(shí)在M33的終端COM7上會(huì)出現(xiàn)打印

Connecting to COM7

Connected.

hello world.

6.參考資料

MCUXpresso SDK for MCIMX93-EVK快速入門(mén)

Getting Started with MCUXpresso SDK for MCIMX93-EVK.pdf (nxp.com)

《MYD-LMX9X Linux軟件評(píng)估指南》

《MYD-LMX9X Linux軟件開(kāi)發(fā)指南》



關(guān)鍵詞: 米爾 NXP .MX 93 M33 處理器

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉