锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

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

时间:2024-07-01 19:07:12

1.概述

本文首要先容M33核的两种工程调试开辟,第一种体式格局是经由过程板子自带的固件举行开辟,第二种体式格局是应用 IAR Embedded Workbench 来构建可移植的Freertos文件举行开辟。

2.硬件资本

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

3.软件资本

Windows7及以上版本

软件 :IAR Embedded Workbench

板载固件调试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.环境预备

图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_hello\freertos_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_hello\freertos_hello\Debug天生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倏地入门

《MYD-LMX9X Linux软件评价指南》

《MYD-LMX9X Linux软件开辟指南》

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章