新聞中心

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

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

        作者: 時間:2024-07-03 來源:EEPW 收藏


        本文引用地址:http://www.104case.com/article/202407/460634.htm

        1.概述

        本文主要介紹核的兩種工程調試開發(fā),第一種方式是通過板子自帶的固件進行開發(fā),第二種方式是使用 IAR Embedded Workbench 來構建可移植的Freertos文件進行開發(fā)。

        2.硬件資源

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

        1720015035263243.png

        3.軟件資源

        ●   Windows7及以上版本

        ●   軟件 :IAR Embedded Workbench

        4.板載固件調試

        4.1環(huán)境準備

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

        1720015063808528.png

        圖4-1 固件圖

        接下來本章將以str_echo為例進行調試。

        4.2調試

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

        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

        此時M33的終端COM7口會出現(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]

        此時還不能發(fā)送字符,還需要將驅動裝好命令如下

        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!

        此時就能看到目錄/dev下多了一個ttyRPMSG30,可以通過這個端口向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調試M33

        5.1.環(huán)境準備

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

        1720015092412088.png

        圖5-1 SDK示例工程

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

        5.2. 導入工程文件

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

        1720015139668285.png

        圖5-2 選擇導入文件

        選擇完之后,然后點擊[打開]導入,然后確認,即導入成功。

        5.3. 環(huán)境配置

        ●   選擇芯片

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

        1720015160863496.png

        圖5-3 選擇芯片

        ●   選擇庫函數(shù)

        1720015180823043.png

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

        ●   設置優(yōu)化等級

        1720015199334187.png

        圖5-4 設置優(yōu)化等級

        ●   選擇下載器

        1720015215963460.png

        圖5-5 選擇下載器

        ●   設置輸出文件和輸出名字

        1720015235374671.png

        圖5-6 設置輸出文件和輸出名字

        5.3.編譯

        右鍵單擊freertos_hello-debug文件夾先點擊make,成功后點擊RebuildAll。

        1720015254566210.png

        圖5-7 構建項目

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

        1720015285167970.png

        圖5-8 生成bin文件

        5.4.燒錄

        這里我們選擇SD卡燒錄,首先把生成的hello-world.bin文件放到SD卡里面,選擇SD卡啟動(具體參考),分別接上A55 Debug串口J14)和M33 Debug串口(J15),本章所示COM25接的A55COM7接的M33,在上電之后A55端進入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...

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

        Connecting to COM7

        Connected.

        hello world.

        6.參考資料

        MCUXpresso SDK for MCIMX93-EVK快速入門

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

        《MYD-LMX9X Linux軟件評估指南》

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



        關鍵詞: 米爾 NXP .MX 93 M33 處理器

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 余江县| 张家界市| 建瓯市| 林甸县| 苍梧县| 福清市| 洛隆县| 唐河县| 弥渡县| 嵊泗县| 永兴县| 禄丰县| 龙胜| 北宁市| 衡阳县| 泽库县| 乌海市| 铜鼓县| 松溪县| 阿城市| 连云港市| 林甸县| 武穴市| 禹城市| 恩施市| 永定县| 翼城县| 广河县| 盐边县| 汤阴县| 乌兰察布市| 商都县| 浪卡子县| 随州市| 武安市| 桂东县| 商洛市| 杭州市| 百色市| 陕西省| 甘孜|