0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何实现异构处理器间相互通讯——米尔带您玩转i.MX 8M Plus开发板

米尔电子 2022-07-22 15:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本篇测评由电子工程世界的优秀测评者“bloong”提供。

此次测试的项目,是异构处理器间相互通讯项目。

MYD-JX8MPQ配备了一颗异构的Cortex-M7协处理器,可以同时运行LinuxRTOS。本文主要介绍协处理器M7使用方法。M7在运行时可能会涉及到和A53核共用资源,这里列举出会冲突资源如下:

ECSPI0/ECSPI2,FLEXCAN,GPIO1/GPIO5,GPT1,I2C3,I2S3,UART4,PWM4,SDMA1/SDMA2,所以在一起使用时,需要将A53的这些资源关闭,这里就需要用到myd-jx8mp-rpmsg.dtb设备树。这里的M7使用uart4 作为串口。

下文介绍如何使用M7,以及编译M7程序的方法:

M7使用方法

接两个串口:1个是开发板的Debug串口,另一个是M7的UART4串口。

1、Debug口为J4及TYPE-C Debug;

2、UART4口为J6,下图中红色箭头指示位置为pin1即UART4_TXD,据此pin2即UART4_RXD,pin3为GND。接这3根线就可以。

43ffc6b2-0595-11ed-9ade-dac502259ad0.png

44114e1e-0595-11ed-9ade-dac502259ad0.png

查看分区信息

启动开发板按任意键进入uboot模式,查看vfat分区中存在的文件。

u-boot=> fatls mmc2

29209088Image

8208imx8mp_m7_TCM_hello_world.bin

19040imx8mp_m7_TCM_rpmsg_lite_pingpong_rtos_linux_remote.bin

18528imx8mp_m7_TCM_rpmsg_lite_str_echo_rtos.bin

40948imx8mp_m7_TCM_sai_low_power_audio.bin

62815myd-jx8mp-atk-10.dtb

61702myd-jx8mp-base.dtb

62815myd-jx8mp-hontron-7.dtb

62846myd-jx8mp-lt8912.dtb

62555myd-jx8mp-m190etn01-19.dtb

62619myd-jx8mp-rpmsg.dtb

2113024tee.bin

12file(s),0dir(s)

设置M7设备树

kernel加载的设备树由fdt_file变量决定,这里设置成M7专用设备树。

u-boot=> printenv fdt_file

fdt_file=myd-jx8mp-base.dtb

u-boot=> setenv fdt_file myd-jx8mp-rpmsg.dtb

u-boot=> save

Saving Environment to MMC... Writing to MMC(2)... OK

u-boot=> printenv fdt_file

fdt_file=myd-jx8mp-rpmsg.dtb

u-boot=>


设置M7启动参数M7启动流程也是加载M7程序到内存,用bootaux命令启动, 正常kernel启动也一样,只是最后用bootm启动。

u-boot=> printenv fdt_file

fdt_file=myd-jx8mp-base.dtb

u-boot=> setenv fdt_file myd-jx8mp-rpmsg.dtb

u-boot=> save

Saving Environment to MMC... Writing to MMC(2)... OK

u-boot=> printenv fdt_file

fdt_file=myd-jx8mp-rpmsg.dtb

u-boot=> setenv m7_image imx8mp_m7_TCM_rpmsg_lite_str_echo_rtos.bin

u-boot=> setenv m7_boot_temp_addr0x48000000

u-boot=> setenv m7_boot_addr0x7E0000

u-boot=> setenv m7_run'fatload mmc ${mmcdev}:${mmcpart} ${m7_boot_tem

> p_addr} ${m7_image};cp.b ${m7_boot_temp_addr} ${m7_boot_addr} 0x20000; bo

> otaux ${m7_boot_addr}'

u-boot=> setenv m7_run'fatload mmc ${mmcdev}:${mmcpart} ${m7_boot_tem p_addr} ${m7_image};cp.b ${m7_boot_temp_addr} ${m7_boot_addr} 0x20000; bootaux ${m7_boot_addr}'

u-boot=> setenv mmcboot"run m7_run;${mmcboot}"

u-boot=> save

Saving Environment to MMC... Writing to MMC(2)... OK

u-boot=>


测试M7程序

此时已经设置好了M7启动,只需要重启开发板,那么在A53启动kernel同时,也会启动M7中的程序。启动之后A53的串口执行如下2句,既可以看到M7中串口出现对应的打印。

myd-jx8mplogin:root

root@myd-jx8mp:~# modprobe imx_rpmsg_tty

root@myd-jx8mp:~# [ 33.759911] can1-stby: disabling

[33.763151] can2-stby:disabling

[33.766408]VSD_3V3:disabling

[33.769489]m2_keyb_pwr:disabling

echo"hi m7!">/dev/ttyRPMSG30

root@myd-jx8mp:~# cat /dev/ttyRPMSG30

hi m7!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    26

    文章

    6513

    浏览量

    121373
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    恩智浦FRDM i.MX 95开发板释放边缘应用无限潜能

    FRDM i.MX 95开发平台是一款基于i.MX 95应用处理器 (采用15mm x 15mm封装) 的低成本、紧凑型开发板。该平台专为快
    的头像 发表于 05-19 09:41 376次阅读
    恩智浦FRDM <b class='flag-5'>i.MX</b> 95<b class='flag-5'>开发板</b>释放边缘应用无限潜能

    i.MX 8M Plus SoC 通过外部调试进行 JTAG 调试的行为有一些疑问,求解答

    我对 i.MX 8M Plus SoC 通过外部调试进行 JTAG 调试的行为有一些疑问,我希望您能帮助我解决这个问题。 与我使用的其他 i.MX
    发表于 04-23 06:04

    无法将 FlexCan 与 i.MX 8M Plus EVK 一起使用,为什么?

    我正在使用\" i.MX 8M Plus EVK ”, and i have flashed on it the latest andro
    发表于 04-17 06:54

    如何下载 i.MX 8M Plus SDK?

    我正在使用 i.MX 8M Plus 处理器,并想下载适用于 Cortex-A53 的适当 SDK。我在产品页面上找不到直接下载链接。 您能否引导我到正确的位置或提供下载
    发表于 04-16 07:46

    如何在“i.MX 8M Plus EVK Board”上的网络浏览中打开.html文件?

    i am using “i.MX 8M Plus EVK ”,我已经闪过了“lf_v6.12.34-2.1.0_images_imx
    发表于 04-10 08:56

    请问qemu 可以模拟 i.MX 8M Plus 吗?

    我们没有i.MX 8M Plus,所以我想问一下 qemu 是否可以模拟i.MX 8M
    发表于 03-05 08:10

    探索FRDM - IMX8MPLUS开发板:开启嵌入式开发新旅程

    MPLUS开发板就是这样一款值得深入探索的产品。它为开发者提供了一个低成本、高性能的硬件平台,能够帮助我们快速熟悉i.MX 8M Plus
    的头像 发表于 12-24 11:00 608次阅读

    今天开奖!NXP i.MX开发板、吸尘、定制背包免费送~

    冬日暖心送宠粉活动今天中午12点准时开奖你还没参加吗?成为米尔和NXP的粉丝i.MX开发板、吸尘、定制背包、定制运动帽免费带回家一等奖(3名)米尔
    的头像 发表于 12-18 08:05 609次阅读
    今天开奖!NXP <b class='flag-5'>i.MX</b><b class='flag-5'>开发板</b>、吸尘<b class='flag-5'>器</b>、定制背包免费送~

    恩智浦FRDM i.MX 8M Plus开发板详解

    开发高级HMI应用、计算机视觉系统以及边缘AI项目时,开发人员常常面临一个共同挑战:如何在不依赖昂贵且复杂的开发平台的前提下,获得足够的处理能力。这正是FRDM
    的头像 发表于 11-18 15:07 1776次阅读

    简单认识NXP FRDM i.MX 93开发板

    FRDM i.MX 93开发板是一款入门级、紧凑型开发板,采用i.MX93应用处理器。该配备板
    的头像 发表于 11-17 09:45 1915次阅读
    简单认识NXP FRDM <b class='flag-5'>i.MX</b> 93<b class='flag-5'>开发板</b>

    【干货分享】米尔NXP i.MX 91开发板移植运行IGH EtherCAT主站

    米尔基于NXPi.MX91的核心开发板,搭载新一代入门级NXPi.MX91处理器,内核Cor
    的头像 发表于 09-02 08:04 1307次阅读
    【干货分享】<b class='flag-5'>米尔</b>NXP <b class='flag-5'>i.MX</b> 91<b class='flag-5'>开发板</b>移植运行IGH EtherCAT主站

    恩智浦FRDM i.MX 8M Plus开发板上架

    i.MX 8M Plus应用处理器集成2个或4个Arm Cortex-A53核、1个专用于实时控制的Arm Cortex-M7核,以及1个算
    的头像 发表于 08-16 17:38 2527次阅读
    恩智浦FRDM <b class='flag-5'>i.MX</b> <b class='flag-5'>8M</b> <b class='flag-5'>Plus</b><b class='flag-5'>开发板</b>上架

    有奖丨米尔 NXP i.MX91开发板免费试用来啦

    米尔与NXP合作发布的新品基于NXPi.MX91应用处理器的MYD-LMX91开发板免费试用名额来啦~~米尔提供了3套价值588元的MYD-
    的头像 发表于 06-05 08:02 1614次阅读
    有奖丨<b class='flag-5'>米尔</b> NXP <b class='flag-5'>i.MX</b>91<b class='flag-5'>开发板</b>免费试用来啦

    米尔NXP i.MX 91核心发布,助力新一代入门级Linux应用开发

    本帖最后由 blingbling111 于 2025-5-30 16:17 编辑 米尔电子基于与NXP长期合作的嵌入式处理器开发经验,在i.MX 6和
    发表于 05-30 11:20

    新品!米尔NXP i.MX 91核心,赋能新一代入门级Linux应用

    米尔电子基于与NXP长期合作的嵌入式处理器开发经验,在i.MX6和i.MX8系列核心领域已形成
    的头像 发表于 05-29 08:01 3201次阅读
    新品!<b class='flag-5'>米尔</b>NXP <b class='flag-5'>i.MX</b> 91核心<b class='flag-5'>板</b>,赋能新一代入门级Linux应用