中國自動化學會專家咨詢工作委員會指定宣傳媒體
新聞詳情
gkongbbs

異構R5實時系統(tǒng)開發(fā)筆記-米爾基于國產(chǎn)芯馳D9360商顯板

http://casecurityhq.com 2024-06-18 10:01 來源:米爾

本文將介紹基于米爾電子MYD-YD9360商顯板的R5協(xié)處理器開發(fā)方案測試。

本處參考<R5協(xié)處理器開發(fā)筆記>對D9360中的協(xié)處理器進行開發(fā)測試

開發(fā)之前請確認編譯環(huán)境正常可以正常對鏡像進行編譯

具體參考之前編譯Ubuntu系統(tǒng)文章,自行編譯buildroot系統(tǒng)測試

1.1打開RTOS驅動

freeRTOS的源碼放在ssdk包下面,我們可以通過圖形化界面啟動RTOS系統(tǒng)。D9的ssdk圖形化界面是通過menuconfig.sh腳本配置打開,此腳本在ssdk/tools下。以D9360為例,如下:

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

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

1.2 添加RTOS例程驅動

RTOS系統(tǒng)例程在examples/kunlun/drivers

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

新建一個abc目錄

并配置Kconfig和rules.mk文件

返回driver目錄下 配置Kconfig添加ABC去東門模塊初始狀態(tài)和圖形界面類型

ABC驅動模塊的初始狀態(tài)和圖形界面類型

在rules.mk文件下,添加如下內容

MODULES += $(LOCAL_DIR)/abc: 如果配置選項 CONFIG_ABC_TEST 為 "y",則會將 $(LOCAL_DIR)/abc 添加到變量 MODULES 中。這意味著當啟用了 "ABC Test" 功能時,會將 $(LOCAL_DIR)/abc 模塊添加到模塊列表中。

R5核數(shù)據(jù)發(fā)送到A55核中

將rpmsg目錄下的rpmsg_test.c文件復制到abc.c文件中,該驅動描述如何通過RPMSG協(xié)議進行核間通信。我們可以在此程序基礎上加入自己的協(xié)議,以下是R5核發(fā)送“Hello, RPMSG!”字符串到A55核,并打印出接收到的信息的函數(shù)。

1.3、1.4----------------具體代碼參加米爾公眾號------------------------------------

保存所有代碼

編譯系統(tǒng) 燒錄

MODULES += $(LOCAL_DIR)/abc: 如果配置選項 CONFIG_ABC_TEST 為 "y",則會將 $(LOCAL_DIR)/abc 添加到變量 MODULES 中。這意味著當啟用了 "ABC Test" 功能時,會將 $(LOCAL_DIR)/abc 模塊添加到模塊列表中。

R5核數(shù)據(jù)發(fā)送到A55核中

將rpmsg目錄下的rpmsg_test.c文件復制到abc.c文件中,該驅動描述如何通過RPMSG協(xié)議進行核間通信。我們可以在此程序基礎上加入自己的協(xié)議,以下是R5核發(fā)送“Hello, RPMSG!”字符串到A55核,并打印出接收到的信息的函數(shù)。

1.5結果顯示

在R5核調用rpmsg_test例程,向A55核發(fā)送信息

R5界面>rpmsg_test send 0 3 1>Sent: 123456789Received: 123456789

>rpmsg_test send 1 3 1>Sent: 123456789Received: 123456789

A55界面root@myd-jd9x:~# [   22.223170] virtio_rpmsg_bus virtio0: virtio send susses[   34.943644] sd,rpmsg-ipcc soc:ipcc@1: ipcc send susses

在A55核調用echo_test例程,向R5發(fā)送信息,打印如下:

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 !

版權所有 中華工控網(wǎng) Copyright?2024 Gkong.com, All Rights Reserved