广告

异构R5实时系统开发笔记-米尔基于国产芯驰D9360商显板

2024-06-17 米尔电子 阅读:
本文将介绍基于米尔电子MYD-YD9360商显板的R5协处理器开发方案测试。

本处参考<R5协处理器开发笔记>对D9360中的协处理器进行开发测试3tIednc

开发之前请确认编译环境正常可以正常对镜像进行编译3tIednc

具体参考之前编译Ubuntu系统文章,自行编译buildroot系统测试3tIednc

1.1打开RTOS驱动3tIednc

freeRTOS的源码放在ssdk包下面,我们可以通过图形化界面启动RTOS系统。D9的ssdk图形化界面是通过menuconfig.sh脚本配置打开,此脚本在ssdk/tools下。以D9360为例,如下:3tIednc

ddj@ubuntu:~/YD9X/MYD-YD9X-SDK_V1.0/source/ssdk$ pwd/home/ddj/YD9X/MYD-YD9X-SDK_V1.0/source/ssdk3tIednc

~/MYD-JD9X-ubuntu/MYD-JD9X-SDK_V1.0/source/ssdk$ ./tools/menuconfig.sh -b d9360_ref -p ref -c secure3tIednc

 3tIednc

1.2 添加RTOS例程驱动3tIednc

RTOS系统例程在examples/kunlun/drivers3tIednc

ddj@ubuntu:~/YD9X/MYD-YD9X-SDK_V1.0/source/ssdk/examples/kunlun/drivers$ ls3tIednc

 3tIednc

新建一个abc目录3tIednc

并配置Kconfig和rules.mk文件3tIednc

3tIednc

返回driver目录下 配置Kconfig添加ABC去东门模块初始状态和图形界面类型3tIednc

ABC驱动模块的初始状态和图形界面类型3tIednc

3tIednc

在rules.mk文件下,添加如下内容3tIednc

3tIednc

MODULES += $(LOCAL_DIR)/abc: 如果配置选项 CONFIG_ABC_TEST 为 "y",则会将 $(LOCAL_DIR)/abc 添加到变量 MODULES 中。这意味着当启用了 "ABC Test" 功能时,会将 $(LOCAL_DIR)/abc 模块添加到模块列表中。3tIednc

R5核数据发送到A55核中3tIednc

将rpmsg目录下的rpmsg_test.c文件复制到abc.c文件中,该驱动描述如何通过RPMSG协议进行核间通信。我们可以在此程序基础上加入自己的协议,以下是R5核发送“Hello, RPMSG!”字符串到A55核,并打印出接收到的信息的函数。3tIednc

1.31.4----------------具体代码参加米尔公众号------------------------------------3tIednc

保存所有代码3tIednc

编译系统 烧录3tIednc

3tIednc

 3tIednc

MODULES += $(LOCAL_DIR)/abc: 如果配置选项 CONFIG_ABC_TEST 为 "y",则会将 $(LOCAL_DIR)/abc 添加到变量 MODULES 中。这意味着当启用了 "ABC Test" 功能时,会将 $(LOCAL_DIR)/abc 模块添加到模块列表中。3tIednc

R5核数据发送到A55核中3tIednc

将rpmsg目录下的rpmsg_test.c文件复制到abc.c文件中,该驱动描述如何通过RPMSG协议进行核间通信。我们可以在此程序基础上加入自己的协议,以下是R5核发送“Hello, RPMSG!”字符串到A55核,并打印出接收到的信息的函数。3tIednc

1.5结果显示3tIednc

在R5核调用rpmsg_test例程,向A55核发送信息3tIednc

R5界面>rpmsg_test send 0 3 1>Sent: 123456789Received: 123456789>rpmsg_test send 1 3 1>Sent: 123456789Received: 123456789A55界面root@myd-jd9x:~# [   22.223170] virtio_rpmsg_bus virtio0: virtio send susses[   34.943644] sd,rpmsg-ipcc soc:ipcc@1: ipcc send susses3tIednc

在A55核调用echo_test例程,向R5发送信息,打印如下:3tIednc

A55界面root@myd-jd9x:~echo_test -d virtio0.rpmsg-echo.-1.30 -c 1 Echo test startupdate rpmsg-mtu=496 from kernelsend string:Hello,RPMsg!receive string:Hello,RPMsg!R5界面>Sending data (length 20): H e l l o , R P M s g !3tIednc

责编:Demi
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了