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

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

3天内不再提示

YY3568 Debian11+RT-Thread混合内核部署

Rice嵌入式开发技术分享 来源:Rice嵌入式开发技术分享 作者:Rice嵌入式开发技术 2024-04-15 15:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

RK3568 Debian11+RT-Thread混合内核部署方案

方案:3个核(Linux或Debian) + 1个核(RT-Thread)

Debian-AMP工程
  1. amp工程,下载链接:http://dd.youyeetoo.cn:5000/sharing/HhtpwagEr
  2. 登录下载链接,然后点击 “下载” 按钮进行下载。
924487fc-f92e-11ee-b759-92fbcf53809c.jpg
  1. 将下载好的固件迁移到ubuntu中。

9250b766-f92e-11ee-b759-92fbcf53809c.png

编译构建

搭建编译环境

sudoapt-getupdate

sudoapt-getinstallsconsgitgnupgflexbisongperflibsdl1.2-dev
libesd-javalibwxgtk3.0-devsquashfs-toolsbuild-essentialzipcurl
libncurses5-devzlib1g-devpngcrushschedtoollibxml2libxml2-utils
xsltproclzoplibc6-devschedtoolg++-multiliblib32z1-devlib32ncurses5-dev
lib32readline-devgcc-multiliblibswitch-perllibssl-devunzipzipdevice-tree-compiler
liblz4-toolpython-pyelftoolspython3-pyelftools-y

解压工程压缩包:

youyeetoo@youyeetoo:~$tar-zxvfYY3568-Debian11_AMP.tar.gz
92589382-f92e-11ee-b759-92fbcf53809c.jpg

编译代码:

  1. 进入工程目录:
youyeetoo@youyeetoo:~$cdYY3568-Debian11
  1. 全量编译:
youyeetoo@youyeetoo:~/YY3568-Debian11$./build.sh
  • 编译过程, 选择youyeetoo_yy3568_emmc_defconfig:

9261a9a4-f92e-11ee-b759-92fbcf53809c.png

  • 编译完成结果:
92669b9e-f92e-11ee-b759-92fbcf53809c.jpg
  • 固件生成目录:you_project/output/firmware
926a8bd2-f92e-11ee-b759-92fbcf53809c.jpg

资源保护

Linux/Debian + RTT AMP模式下,不同系统间会存在资源的竞争。所以在RTT中使用到的的一些外设、时钟等资源时最好都在rk3568-amp.dtsi文件中保护一下,避免和Linux/Debian那边的资源冲突

CPU划分

  • RK3568是由四个64位Cortex-A55核组成,YY3568的AMP方案采用3个核心跑Linux或Debian,1个核心跑RT-Thread。所以需要对其进行约束。
  • 约束方法:修改Linux或者Debian端的内核设备树:rk3568-amp.dtsi,修改如下:
926dd878-f92e-11ee-b759-92fbcf53809c.jpg92717960-f92e-11ee-b759-92fbcf53809c.jpg

内存划分

分区 内存起始地址 内存大小 说明
RTT SRAM 0xfdcc0000 64K 系统SRAM
RTT固件 0x02800000 8M RTT 固件空间
共享内存 0x07800000 4M 共享内存,可以被所有CPU访问
RPMSG内存 0x07c00000 5M RPMSG共享内存
  • 约束方法:修改Linux或者Debian端的内核设备树:rk3568-amp.dtsi,修改如下:
9274fc2a-f92e-11ee-b759-92fbcf53809c.jpg

总线仲裁

  • 以串口为例,Linux/Debian使用串口2作为调试串口,RT-Thread使用串口4作为调试串口。
  • 串口总线仲裁约束方法:修改Linux或者Debian端的内核设备树:rk3568-amp.dtsi,修改如下:
92788b24-f92e-11ee-b759-92fbcf53809c.jpg

工具准备

USB驱动安装

  1. USB驱动下载,下载链接:https://pan.baidu.com/s/1WHxhBwtLSpMFWFBzpbr2-g?pwd=u6z1 提取码:u6z1
9280b768-f92e-11ee-b759-92fbcf53809c.jpg
  1. USB驱动安装:
9286a254-f92e-11ee-b759-92fbcf53809c.jpg

烧录工具安装

  1. 烧录工具下载,下载链接:https://pan.baidu.com/s/1xFL6Mqf7RqCi40dxZ8OEUg 提取码:nngs
928a1d9e-f92e-11ee-b759-92fbcf53809c.jpg
  1. 运行烧录工具:
92902234-f92e-11ee-b759-92fbcf53809c.jpg

固件烧录

导入固件

  1. 选择你编译出来的固件:
9293caba-f92e-11ee-b759-92fbcf53809c.jpg

进入loader模式

  1. loader模式:在Loader模式下,bootloader会进入升级状态,等待主机命令,用于固件升级等。要进入Loader模式,必须让bootloader在启动时检测到RECOVERY(恢复)键按下,且USB处于连接状态。

  2. 进入loader模式:

  • 先断开电源适配器连接。
  • 双口USB Type-A数据线一端连接主机,一端连接开发板,一定要接图示接口
929790a0-f92e-11ee-b759-92fbcf53809c.jpg
  • 按住设备上的 RECOVERY (恢复)键并保持
929b343a-f92e-11ee-b759-92fbcf53809c.jpg
  • 接上电源
  • 大约2~3秒后,松开RECOVERY键
  1. 烧录工具会提示:出现一个LOADER设备,点击 “升级” 按钮。
929fc914-f92e-11ee-b759-92fbcf53809c.jpg
  1. 烧录完成
92a35d36-f92e-11ee-b759-92fbcf53809c.jpg

运行演示

  1. 准备工作:板子需要接两个串口:Linux系统(串口2)RT-Thread(串口4)注意:两个内核的调试串口的波特率:1500000

  2. 运行效果:

92a6b18e-f92e-11ee-b759-92fbcf53809c.png


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

    关注

    4

    文章

    1436

    浏览量

    42492
  • RT-Thread
    +关注

    关注

    32

    文章

    1540

    浏览量

    44287
  • RK3568
    +关注

    关注

    5

    文章

    628

    浏览量

    7586
  • Debian
    +关注

    关注

    0

    文章

    77

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【迅为工业RK3568稳定可靠】itop-3568开发板Linux驱动开发实战:RK3568内核模块符号导出详解

    【迅为工业RK3568稳定可靠】itop-3568开发板Linux驱动开发实战:RK3568内核模块符号导出详解
    的头像 发表于 11-21 13:25 664次阅读
    【迅为工业RK<b class='flag-5'>3568</b>稳定可靠】itop-<b class='flag-5'>3568</b>开发板Linux驱动开发实战:RK<b class='flag-5'>3568</b><b class='flag-5'>内核</b>模块符号导出详解

    rk3568 debian首次开机进不去桌面

    rk3568 debian首次开机进不去桌面,等大概60s左右自动重启,重启后可以正常进入桌面,使用buildroot则没有出现此问题,有人知道是什么原因吗?*附件:log.zip
    发表于 10-24 15:30

    Win11安装RT-Thread Studio失败怎么解决?

    Win11安装RT-Thread Studio-V2.2.9版本出现错误,大家怎么解决的?
    发表于 09-29 08:06

    为智能汽车打造“安全+效率+生态”内核RT-Thread睿赛德重磅发布车控白皮书

    9月16日,RT-Thread睿赛德正式发布《RT-Thread程翧车控平台白皮书1.0》(2025),系统分析了车控操作系统领域格局与技术壁垒,以及集中化、国产化与虚拟化驱动变革的行业趋势,在此
    的头像 发表于 09-19 19:24 958次阅读
    为智能汽车打造“安全+效率+生态”<b class='flag-5'>内核</b>,<b class='flag-5'>RT-Thread</b>睿赛德重磅发布车控白皮书

    RT-Thread4.10系统运行出现_thread_timeout断言错误怎么解决?

    RT-Thread4.10内核,程序在运行中出现 ((thread->stat & RT_THREAD_STAT_MASK) ==
    发表于 09-16 08:09

    Windows上使用ENV工具开发基于先楫MCU的RT-Thread应用

    前言Env是RT-Thread推出的开发辅助工具,针对基于RT-Thread操作系统的项目工程,提供编译构建环境、图形化系统配置及软件包管理功能。其内置的menuconfig提供了简单易用的配置剪裁
    的头像 发表于 08-29 12:22 953次阅读
    Windows上使用ENV工具开发基于先楫MCU的<b class='flag-5'>RT-Thread</b>应用

    在Ubuntu上开发基于先楫MCU的RT-Thread应用指南

    1、前言RT-ThreadEnv是RT-Thread推出的开发辅助工具,针对基于RT-Thread操作系统的项目工程,提供编译构建环境、图形化系统配置及软件包管理功能。其内置的menuconfig
    的头像 发表于 08-29 12:22 1232次阅读
    在Ubuntu上开发基于先楫MCU的<b class='flag-5'>RT-Thread</b>应用指南

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    大家好,我们是中国科学技术大学操作系统原理与设计(H)课oooooS小组。这个项目是我们的课程大作业:参考RT-Thread架构,使用Rust搭建一个原生的嵌入式操作系统内核。初识Rust是因为xk
    的头像 发表于 08-02 11:03 3209次阅读
    <b class='flag-5'>RT-Thread</b> 遇上 Rust:安全<b class='flag-5'>内核</b> RusT-<b class='flag-5'>Thread</b> 的诞生

    【HZ-RK3568开发板免费体验】3、开启Linux Kernel RT功能

    HZ-RK3568_MV01.img 编译完成后,将更新的镜像使用RKdevTool烧录到开发板即可。使用uname -a指令可以查看内核已添加RT功能。 root@rk3568:
    发表于 07-22 14:03

    RT-Thread荣获2025优秀开源项目 | 新闻速递

    6月底,RT-Thread睿赛德受邀参与由上海开源信息技术协会主办的2025上海开源创新精英荟。上海市商委副主任张杰出席会议并致辞。RT-Thread嵌入式操作系统项目凭借其卓越的技术创新与开源生态
    的头像 发表于 07-04 09:04 2432次阅读
    <b class='flag-5'>RT-Thread</b>荣获2025优秀开源项目 | 新闻速递

    RT-Thread BSP全面支持玄铁全系列RISC-V 处理器 | 技术集结

    RT-Thread标准版已全面适配玄铁E、R、C系列内核,并在C906内核上支持RT-Smart微内核操作系统。本文将以E906运行
    的头像 发表于 07-03 18:03 2647次阅读
    <b class='flag-5'>RT-Thread</b> BSP全面支持玄铁全系列RISC-V 处理器 | 技术集结

    RT-Thread4.10系统运行出现_thread_timeout断言错误怎么解决?

    RT-Thread4.10内核,程序在运行中出现 ((thread->stat & RT_THREAD_STAT_MASK) ==
    发表于 06-26 08:23

    揭秘RT-Thread上的AUTOSAR CP系统

    本文探讨了RT-Thread与AUTOSARCP的融合,解决车载ECU开发中实时性、安全性与灵活性的平衡问题。通过分层安全内核rt-safetyos/autoos)和工具链整合,兼容AUTOSAR
    的头像 发表于 06-23 20:22 2948次阅读
    揭秘<b class='flag-5'>RT-Thread</b>上的AUTOSAR CP系统

    2025 RT-Thread全球技术大会议程正式发布!

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技术大会)是聚焦基础软件技术创新与实践的嵌入式技术盛会,持续推动技术价值转化
    的头像 发表于 05-27 19:28 1072次阅读
    2025 <b class='flag-5'>RT-Thread</b>全球技术大会议程正式发布!

    如何将RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默认支持的IDE只有IAR 和 Keil, 那如何将RT-Thread移植到NXP MCUXPressoIDE上呢?本文内容比较简单但稍有琐碎,希望对有需要的小伙伴有所帮助。
    的头像 发表于 02-13 10:37 2440次阅读
    如何将<b class='flag-5'>RT-Thread</b>移植到NXP MCUXPressoIDE上