前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >YY3568 Debian11+RT-Thread混合内核部署

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

作者头像
Rice加饭
发布2024-04-18 19:25:46
1270
发布2024-04-18 19:25:46
举报
文章被收录于专栏:Rice嵌入式Rice嵌入式

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

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

  1. amp工程,下载链接:http://dd.youyeetoo.cn:5000/sharing/HhtpwagEr
  2. 登录下载链接,然后点击 “下载” 按钮进行下载。
  1. 将下载好的固件迁移到ubuntu中。

编译构建

搭建编译环境

代码语言:javascript
复制
sudo apt-get update

sudo apt-get install scons git gnupg flex bison gperf libsdl1.2-dev \
libesd-java libwxgtk3.0-dev squashfs-tools build-essential zip curl \
libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \
xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev \
lib32readline-dev gcc-multilib libswitch-perl libssl-dev unzip zip device-tree-compiler \
liblz4-tool python-pyelftools python3-pyelftools -y

解压工程压缩包:

代码语言:javascript
复制
youyeetoo@youyeetoo:~$ tar -zxvf YY3568-Debian11_AMP.tar.gz

编译代码:

  1. 进入工程目录:
代码语言:javascript
复制
youyeetoo@youyeetoo:~$ cd YY3568-Debian11
  1. 全量编译:
代码语言:javascript
复制
youyeetoo@youyeetoo:~/YY3568-Debian11$ ./build.sh
  • 编译过程, 选择youyeetoo_yy3568_emmc_defconfig:
  • 编译完成结果:
  • 固件生成目录:you_project/output/firmware

资源保护

在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,修改如下:

内存划分

分区

内存起始地址

内存大小

说明

RTT SRAM

0xfdcc0000

64K

系统SRAM

RTT固件

0x02800000

8M

RTT 固件空间

共享内存

0x07800000

4M

共享内存,可以被所有CPU访问

RPMSG内存

0x07c00000

5M

RPMSG共享内存

  • 约束方法:修改Linux或者Debian端的内核设备树:rk3568-amp.dtsi,修改如下:

总线仲裁

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

工具准备

USB驱动安装

  1. USB驱动下载,下载链接:https://pan.baidu.com/s/1WHxhBwtLSpMFWFBzpbr2-g?pwd=u6z1 提取码:u6z1
  1. USB驱动安装:

烧录工具安装

  1. 烧录工具下载,下载链接:https://pan.baidu.com/s/1xFL6Mqf7RqCi40dxZ8OEUg 提取码:nngs
  1. 运行烧录工具:

固件烧录

导入固件

  1. 选择你编译出来的固件:

进入loader模式

  1. loader模式:在Loader模式下,bootloader会进入升级状态,等待主机命令,用于固件升级等。要进入Loader模式,必须让bootloader在启动时检测到RECOVERY(恢复)键按下,且USB处于连接状态。
  2. 进入loader模式:
  • 先断开电源适配器连接。
  • 双口USB Type-A数据线一端连接主机,一端连接开发板,一定要接图示接口
  • 按住设备上的 RECOVERY (恢复)键并保持
  • 接上电源
  • 大约2~3秒后,松开RECOVERY键
  1. 烧录工具会提示:出现一个LOADER设备,点击 “升级” 按钮。
  1. 烧录完成

运行演示

  1. 准备工作:板子需要接两个串口:Linux系统(串口2),RT-Thread(串口4)。注意:两个内核的调试串口的波特率:1500000
  2. 运行效果:
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-04-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rice 嵌入式开发技术分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 编译构建
    • 搭建编译环境
      • 解压工程压缩包:
        • 编译代码:
        • 资源保护
          • CPU划分
            • 内存划分
              • 总线仲裁
              • 工具准备
                • USB驱动安装
                  • 烧录工具安装
                  • 固件烧录
                    • 导入固件
                      • 进入loader模式
                      • 运行演示
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档