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

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

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

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

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

1.1打开RTOS驱动

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

ddj@ubuntu./source/ssdk$ pwd/home/ddj/YD9X/MYD-YD9X-SDK_V1./source/ssdk
 ~MYD-JD9X-SDK_V1./source/ssdk$ ./tools/menuconfig.sh -b d9360_ref -p ref -c secure

1.png

2.png

1.2 添加RTOS例程驱动

RTOS系统例程在examples/kunlun/drivers

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

3.png

4.png

新建一个abc目录

并配置Kconfigrules.mk文件

5.png

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

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

6.png

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

7.png

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

R5核数据发送到A55核中

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

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

保存所有代码

编译系统烧录

8.png

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

R5核数据发送到A55核中

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

1.5结果显示

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

R5界面>rpmsg_test    >Sent: Received: 
 >rpmsg_test    >Sent: Received: 
 A55界面root@myd-jd9x:~[   ] sd,rpmsg-ipcc soc:ipcc@1: ipcc  susses

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

A55界面root@myd-jd9x:~
  Echo test  rpmsg-mtu=  kernelsend :Hello,RPMsg!receive :Hello,RPMsg!
 R5界面>Sending  ( ): H e l l o , R P M s g !

最新文章