news 2026/4/16 18:00:04

【瑞芯微平台实时Linux方案系列】第一篇 - 瑞芯微实时Linux开发环境搭建

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【瑞芯微平台实时Linux方案系列】第一篇 - 瑞芯微实时Linux开发环境搭建

一、简介:国产化 + 实时 = 下一个风口

  • 政策背景:信创、工业 2025、边缘计算主推国产 SOC。

  • 瑞芯微优势:RK3568(4×A55)/ RK3588(4×A76+4×A55)自带 PCIe 3.0、Mali GPU、NPU,价格 < 国外同级 50%。

  • 实时需求

    • 视觉检测:相机触发 → 算法推理 → 控制气缸,链路程 ≤ 4 ms。

    • 数控系统:插补周期 1 ms,抖动 < 50 μs。

  • 本文目标:从 0 搭好“x86 开发机 ↔ 瑞芯微板”实时 Linux 交叉环境,为后续内核优化、驱动适配、边缘落地奠基。


二、核心概念:4 个关键词先搞懂

关键词一句话说明本文出现形式
PREEMPT_RT官方实时补丁,将自旋锁变互斥锁,降低调度延迟内核.configCONFIG_PREEMPT_RT=y
交叉编译在 x86_64 主机编译 → ARM64 板运行aarch64-linux-gnu-gcc
Rockchip Linux SDK瑞芯微官方 BSP,含 uboot/kernel/rootfsrepo管理,每日同步
SSH 无密登录开发机一键 ssh 板端,无需串口公钥写入~/.ssh/authorized_keys

三、环境准备:10 分钟搭好“交叉工作台”

1. 硬件清单

设备最低配置备注
开发板RK3568 EVB / RK3588 SBC内存 ≥ 2 GB,eMMC ≥ 16 GB
电源12 V/2 A劣质电源会导致随机重启
USB-Type-C 线1 根烧录 & 串口两用
网线1 根千兆交换机

2. 软件清单

组件版本获取地址
Ubuntu 主机20.04 LTS官方 ISO
交叉工具链gcc-linaro-11.3-2022.06-x86_64_aarch64-linux-gnuLinaro
Rockchip Linux SDKstable-4.19-rt / 5.10-rt 分支repo命令见下文

3. 一键安装依赖(可复制)

#!/bin/bash # install_deps.sh set -e sudo apt update sudo apt install -y git repo curl python3 python3-pip \ build-essential libncurses5-dev libssl-dev flex bison \ android-tools-mkbootimg bc lz4 # 安装交叉工具链 TOOLCHAIN=gcc-linaro-11.3-2022.06-x86_64_aarch64-linux-gnu wget https://releases.linaro.org/components/toolchain/binaries/latest-11/aarch64-linux-gnu/${TOOLCHAIN}.tar.xz sudo tar -xf ${TOOLCHAIN}.tar.xz -C /opt/ echo "export PATH=/opt/${TOOLCHAIN}/bin:\$PATH" >> ~/.bashrc source ~/.bashrc

验证:

aarch64-linux-gnu-gcc --version # aarch64-linux-gnu-gcc (Linaro GCC 11.3-2022.06) 11.3.0

四、应用场景(300 字):边缘视觉缺陷检测

某食品包装产线,1.2 m 宽传送带速度 30 m/min,每包标签须在线喷码 + OCR 验证。
相机帧率 60 fps,触发信号经光电传感器 → RK3568 GPIO → 实时线程捕获;
PREEMPT_RT 内核保证中断到用户态 ≤ 80 μs;
推理使用 RKNN Lite,在 NPU 上运行 YOLOv5-Prune,单帧 18 ms;
若识别失败,立即通过 EtherCAT 总线驱动气缸剔除,闭环延迟 < 200 ms。
传统 Windows 方案抖动大,剔除位置漂移 ±15 cm;换瑞芯微 + RT Linux 后抖动 ±2 cm,废品率下降 0.7%,年节省 30 万元。
本系列第一篇先搭环境,后续逐步适配 GPIO 实时驱动、RKNN Runtime、EtherCAT 主站,最终交付“一站式边缘视觉控制器”。


五、实际案例与步骤:从 repo 到 ssh 无密登录

5.1 获取 Rockchip Linux SDK(含 RT 补丁)

mkdir ~/rk3568-rt && cd ~/rk3568-rt repo init -u https://github.com/rockchip-linux/manifests -b linux-5.10-rt repo sync -j$(nproc) # 约 6 GB,耗时 10-15 min

目录结构:

rk3568-rt/ ├── u-boot/ ├── kernel/ # 已含 PREEMPT_RT 补丁 ├── buildroot/ ├── device/rockchip/ └── envsetup.sh

5.2 配置实时内核参数

cd kernel make ARCH=arm64 rockchip_linux_defconfig ./scripts/config --disable CONFIG_SMP_DEFAULT ./scripts/config --enable CONFIG_PREEMPT_RT ./scripts/config --enable CONFIG_HIGH_RES_TIMERS ./scripts/config --set-str CONFIG_LOCALVERSION "-rt-rk3568" make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig # 可选:关闭 DEBUG_FS 减小体积

5.3 多线程编译(8 核示例)

make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 Image dtbs modules # 产出:arch/arm64/boot/Image # arch/arm64/boot/dts/rockchip/rk3568-evb.dtb

5.4 生成 Debian 根文件系统(可选 buildroot 快速验证)

cd ../buildroot make rockchip_rk3568_defconfig make -j$(nproc) # 产出:output/images/rootfs.ext4

5.5 烧录到开发板(maskrom 模式)

# 板子 Type-C 连 PC,按住 maskrom 键上电 sudo upgrade_tool uf Image rk3568-evb.dtb rootfs.ext4 # 重启后串口可见 Linux 5.10.XX-rt-rk3568 启动

5.6 网络 & SSH 无密登录

板端串口登录:

# 设置静态 IP(示例) ifconfig eth0 192.168.1.100 netmask 255.255.255.0 echo "nameserver 114.114.114.114" > /etc/resolv.conf

开发机:

# 1. 生成密钥 ssh-keygen -t rsa -N "" # 2. 拷贝公钥 ssh-copy-id root@192.168.1.100 # 默认密码 rockchip # 3. 一键登录 ssh root@192.168.1.100

成功标志:无需密码进入 shell。


六、驱动开发环境验证:Hello RT Module

6.1 编写最简单的内核模块

/* hello_rt.c */ #include <linux/module.h> #include <linux/rtmutex.h> static int __init hello_init(void) { pr_info("Hello RT World! jiffies=%lu\n", jiffies); return 0; } static void __exit hello_exit(void) { pr_info("Goodbye RT\n"); } module_init(hello_init); module_exit(hello_exit); MODULE_LICENSE("GPL");

6.2 Makefile(交叉编译)

ARCH := arm64 CROSS_COMPILE := aarch64-linux-gnu- KSRC := ~/rk3568-rt/kernel obj-m := hello_rt.o all: $(MAKE) -C $(KSRC) M=$(PWD) modules clean: $(MAKE) -C $(KSRC) M=$(PWD) clean

6.3 编译 & 插入

make scp hello_rt.ko root@192.168.1.100:/root/ ssh root@192.168.1.100 insmod hello_rt.ko dmesg | tail -5

输出:

[ 58.123456] Hello RT World! jiffies=4294937295

→ 证明内核模块编译链、符号表、rt_mutex 均正常。


七、常见问题与解答(FAQ)

问题现象解决
repo sync 失败443 time out换国内镜像repo init -u https://mirrors.ustc.edu.cn/rockchip/...
make 报错“aarch64-linux-gnu-gcc not found”未导出 PATH重新source ~/.bashrc或写绝对路径
烧录提示“No device found”maskrom 未触发按住按键再上电,或换 Type-C 线
insmod 报错“Invalid module format”版本魔术字不一致确保模块与板端内核同一次编译产出
ssh 连接被拒绝网络不通ping 192.168.1.100,检查防火墙 / 交换机

八、实践建议与最佳实践

  1. 版本锁定
    repo manifest导出manifest.lock.xml存 Git,确保半年后仍能复现同一套源码。

  2. ccache 加速
    export USE_CCACHE=1 && ccache -M 50G,二次编译从 20 min 降到 3 min。

  3. Docker 交叉编译(可选)
    官方镜像rockchip/linux-build:debian-10已含工具链,CI 直接docker run避免污染主机。

  4. 串口 & SSH 双保险
    网络调崩时还能串口抢救;串口线选 FT232 芯片,兼容性好。

  5. 实时性提前验证
    每次编译完顺手跑cyclictest -p99 -i100 -d60s把 Max 延迟写进 README,后续任何驱动提交若抖动 > 50 μs 立即回退。

  6. 备份 boot
    烧录前dd if=/dev/mmcblk0 of=/boot/boot_backup.img bs=1M count=16,秒级回滚。


九、总结:一张脑图带走全部要点

瑞芯微实时 Linux 环境搭建 ├─ 主机:Ubuntu 20.04 + Linaro 交叉链 ├─ SDK:repo 拉取 rockchip linux-5.10-rt ├─ 内核:make menuconfig 开启 PREEMPT_RT ├─ 烧录:upgrade_tool 一键到 eMMC ├─ 网络:静态 IP + ssh 无密登录 └─ 验证:hello_rt.ko 插入成功
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 1:08:59

五年博士1年读完,20分钟干完48小时教授工作!这个工具在硅谷火了

芝加哥教授20分钟干完48小时工作&#xff0c;零基础小白10分钟造出完整App&#xff0c;前xAI工程师睡一觉醒来项目就做好了……Claude Code正在重新定义「编程」这件事。 一个顶级程序员&#xff0c;30天没写一行代码。 但他负责的项目&#xff0c;6个月做到了10亿美元年化营…

作者头像 李华
网站建设 2026/4/16 12:31:25

VSCode中,通过SFTP插件管理远程服务器文件

在VSCode中&#xff0c;通过SFTP插件管理远程服务器文件可以极大提升开发效率。目前有几款主流插件&#xff0c;它们的功能侧重和操作方式有所不同&#xff0c;你可以根据自己的习惯和项目需求来选择。 下面的表格对比了四款主流的SFTP相关插件&#xff1a;插件名称 (作者/发布…

作者头像 李华
网站建设 2026/4/16 10:51:43

Java基于Spring Boot+Vue的社区养老服务系统的设计与实现

所需该项目可以在最下面查看联系方式&#xff0c;为防止迷路可以收藏文章&#xff0c;以防后期找不到 这里写目录标题 项目介绍系统实现截图技术栈介绍Spring Boot与Vue结合使用的优势Spring Boot的优点Vue的优点 Spring Boot 框架结构解析Vue介绍系统执行流程Java语言介绍系统…

作者头像 李华
网站建设 2026/4/9 19:34:51

全网最全8个AI论文软件,研究生高效写作必备!

全网最全8个AI论文软件&#xff0c;研究生高效写作必备&#xff01; 论文写作的“隐形助手”&#xff0c;你真的了解吗&#xff1f; 在研究生阶段&#xff0c;论文写作不仅是学术能力的体现&#xff0c;更是时间与精力的双重挑战。随着人工智能技术的不断进步&#xff0c;AI工具…

作者头像 李华
网站建设 2026/4/16 12:42:41

SGMICRO圣邦微 SGM3209YS8G/TR SOP-8 电荷泵

特性 输入电压范围:3V至18V输出电流:100mA 使能引脚上的下拉电阻:600kO2 可编程振荡器频率:120kHz至1.25MHz 无需外部二极管 低输出阻抗:在lout20mA时为15O(典型值) CMOS结构 工作温度范围:-40C至85C提供绿色TDFN-2x2-8L和SOIC-8封装

作者头像 李华