全国
    米尔基于NXP i.MX 93开发板的M33处理器应用开发笔记|开发板|应用开发|处理器
    发布时间:2024-07-04 10:46:36 次浏览
    • 微信: 
      点击复制

      电话联系TA

      -久久信息网

久久信息网提醒您: 发帖时请做好对应地区发布内容,禁止发布违法违规信息,违者封禁账号,本网页提供的文字图片等信息都由网友投稿,有任何疑问联系站长QQ:363930193 。
  • 内容信息

3.软件资源

●   Windows7及以上版本

●   软件 :IAR Embedded Workbench

4.板载固件调试M33

4.1环境准备

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

图4-1 固件图

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

4.2调试

首先将固件加载到开发板当中,然后将M33核打开,命令如下

root@myd-lmx9x:/run/media/root-mmcblk0p2/lib/firmware# echo imx93-11x11-evkm33TCMrpmsglitestrechortos.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 imxrpmsgtty

[  272.516722] imxrpmsgtty 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] imxrpmsgtty 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,我这里选择的是freertoshello,在下载目录MCIMX93-EVK-freertoshellofreertoshello下的freertoshello.eww,如下图所示

图5-2 选择导入文件

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

5.3. 环境配置

●   选择芯片

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

图5-3 选择芯片

●   选择库函数

图5-4 选择库函数

●   设置优化等级

图5-4 设置优化等级

●   选择下载器

图5-5 选择下载器

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

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

5.3.编译

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

图5-7 构建项目

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

图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上会出现打印

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

  • 您可能感兴趣