米尔基于NXP i.MX 93开发板的M33处理器应用开发笔记

发布时间:2024-07-01  

1.概述


本文主要介绍M33核的两种工程调试开发,第一种方式是通过板子自带的固件进行开发,第二种方式是使用 IAR Embedded Workbench 来构建可移植的Freertos文件进行开发。


2.硬件资源


  • MYD-LMX9X 开发板(米尔基于NXP i.MX 93开发板)

    3.软件资源

  • Windows7及以上版本

  • 软件 :IAR Embedded Workbench

  1. 板载固件调试M33

4.1环境准备

在A55 Debug(J14)和M33 Debug(J15)上分别接上串口,我这里COM25连接A55核,COM7接的M33核,上电开机进入系统,在目录/run/media/root-mmcblk0p2/lib/firmware下有调试M33核的五个固件,如图4-1所示。


图4-1. 固件图


接下来本章将以str_echo为例进行调试。

4.2调试

首先将固件加载到开发板当中,然后将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口会出现打印如下

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]

此时还不能发送字符,还需要将驱动装好命令如下

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核发送字符串


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章节所示。


5.IAR Embedded Workbench调试M33


5.1.环境准备


下载SDk,下载地址为示例工程 | MCUXpresso SDK构建工具 (nxp.com)

图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,如下图所示

图 5-2. 选择导入文件

选择完之后,然后点击[打开]导入,然后确认,即导入成功。


5.3. 环境配置


  • 选择芯片


右键单击freertos_hello-debug文件夹选择Options,在General Options一栏中点击Target选择选择芯片,这里没有9352芯片所以选择NXP MIMXRT595S_M33,如下图所示

图 5-3. 选择芯片


  • 选择库函数


图 5-4. 选择库函数


  • 设置优化等级


图 5-4. 设置优化等级


  • 选择下载器


图 5-5. 选择下载器


  • 设置输出文件和输出名字


图 5-6. 设置输出文件和输出名字


5.3.编译


右键单击freertos_hello-debug文件夹先点击make,成功后点击RebuildAll。

图 5-7. 构建项目



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



图 5-8. 生成bin文件


5.4.烧录


这里我们选择SD卡烧录,首先把生成的hello-world.bin文件放到SD卡里面,选择SD卡启动(具体参考),分别接上A55 Debug串口(J14)和M33 Debug串口(J15),本章所示COM25接的A55,COM7接的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上会出现打印

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软件开发指南》


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>