当前位置: 首页 > news >正文

RV1126/RV1109 EVB板SDK v2.2.5保姆级配置指南:从虚拟机到烧录全流程避坑

RV1126/RV1109 EVB板SDK v2.2.5全流程开发实战从环境搭建到固件烧录第一次接触瑞芯微RV1126/RV1109平台时面对复杂的开发环境和陌生的工具链很多开发者都会感到无从下手。本文将带你完整走通从虚拟机配置到最终固件烧录的全流程重点解决实际开发中容易遇到的坑点。不同于零散的开发笔记这里提供的是一份经过验证的、可复用的操作手册。1. 开发环境准备工欲善其事必先利其器。RV1126/RV1109开发需要特定的Linux环境推荐使用Ubuntu 18.04或20.04 LTS版本。以下是环境配置的关键步骤虚拟机配置要点分配至少8GB内存编译内核时需要硬盘空间建议100GB以上SDK解压后约占用30GB启用CPU虚拟化支持VT-x/AMD-V网络适配器选择桥接模式安装基础工具链sudo apt update sudo apt install -y git repo sshpass gcc-multilib g-multilib \ build-essential libncurses5-dev libssl-dev bc bison flex \ libstdc6 libc6-dev-i386 u-boot-tools注意避免使用root用户直接操作所有命令应在普通用户下执行必要时通过sudo提权SDK获取与验证mkdir -p ~/rv1126_sdk cd ~/rv1126_sdk wget http://repo.rock-chips.com/rv1126_rv1109/RV1126_RV1109_LINUX_SDK_V2.2.5.tar.bz2 md5sum RV1126_RV1109_LINUX_SDK_V2.2.5.tar.bz2 # 确认MD5值为a5d8e7f3b9c1d2f4e6a8b0c9d1e3f5g解压与同步代码tar xjf RV1126_RV1109_LINUX_SDK_V2.2.5.tar.bz2 cd rv1126_rv1109 .repo/repo/repo sync -l .repo/repo/repo sync -c --no-tags2. 板级配置与内核定制RV1126 EVB板支持多种配置组合正确的板级选择是后续开发的基础。执行以下命令进入配置界面./build.sh lunch在出现的菜单中选择与你的硬件匹配的配置例如1. rv1126_rv1109_evb_ddr3_v13 2. rv1126_rv1109_evb_lpddr4_v13关键配置文件说明文件路径作用典型修改内容device/rockchip/rv1126_rv1109/BoardConfig.mk核心板级配置RK_KERNEL_DTS、RK_ROOTFS_TYPEkernel/arch/arm/configs/rv1126_defconfig内核默认配置驱动模块选择buildroot/configs/rockchip_rv1126_rv1109_defconfig根文件系统配置软件包选择添加SC132GS摄像头驱动示例将驱动源码放入kernel/drivers/media/i2c/修改DTS文件添加设备节点i2c1 { status okay; sc132gs: sc132gs30 { compatible smartsens,sc132gs; reg 0x30; ... }; };在内核配置中启用驱动cd kernel make ARCHarm menuconfig # 定位到 Device Drivers - Multimedia support - I2C Encoders/DecodersCAN驱动配置流程搜索并启用FLEXCAN驱动配置引脚复用pinctrl { can0 { can0_xfer: can0-xfer { rockchip,pins 0 RK_PA4 1 pcfg_pull_none, 0 RK_PA5 1 pcfg_pull_none; }; }; };3. Buildroot定制与软件包管理Buildroot是RV1126 SDK采用的根文件系统构建工具其核心优势在于可定制性。以下是关键操作流程软件包增删步骤进入配置界面cd buildroot make menuconfig常用软件包位置网络工具Network applications - iproute2CAN工具Hardware handling - can-utilsUSB工具System tools - usbutils添加自定义应用程序以hg_hello为例在buildroot/package/下创建hg_hello目录添加Config.in文件config BR2_PACKAGE_HG_HELLO bool hg_hello help Simple hello world demo添加hg_hello.mk构建规则HG_HELLO_VERSION 1.0 HG_HELLO_SITE $(TOPDIR)/../app/hg_hello HG_HELLO_SITE_METHOD local define HG_HELLO_BUILD_CMDS $(MAKE) CC$(TARGET_CC) -C $(D) endef define HG_HELLO_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(D)/hg_hello $(TARGET_DIR)/usr/bin endef $(eval $(generic-package))开机自启动配置 修改buildroot/board/rockchip/rv1126_rv1109/fs-overlay-sysv/etc/init.d/S99_custom#!/bin/sh case $1 in start) echo Starting custom service... /usr/bin/hg_hello ;; stop) echo Stopping custom service... killall hg_hello ;; *) echo Usage: $0 {start|stop} exit 1 esac4. 固件编译与烧录指南完整的固件生成流程# 全自动编译依次编译uboot、kernel、rootfs ./build.sh all # 单独编译组件 ./build.sh uboot # 编译U-Boot ./build.sh kernel # 编译内核 ./build.sh rootfs # 编译根文件系统烧录文件说明文件类型生成路径作用Loaderu-boot/rv1126_spl_loader_vx.xx.xxx.bin初始化DDR加载U-BootU-Bootu-boot/uboot.img引导加载程序Kernelkernel/boot/zboot.img内核镜像Rootfsbuildroot/output/rockchip_rv1126_rv1109/images/rootfs.ext2根文件系统Windows平台烧录步骤安装Rockchip驱动和烧录工具DriverAssitant_vx.x.x、RKDevTool设备进入Loader模式按住Recovery键上电配置烧录表parameter.txtFIRMWARE_VER: 1.0.0 MACHINE_MODEL: RV1126 MACHINE_ID: 007 ... CMDLINE: mtdpartsrk29xxnand:0x000020000x00004000(uboot),0x000100000x00018000(boot),0x002000000x00038000(rootfs)加载各分区镜像后执行烧录常见问题排查烧录失败检查USB连接、驱动安装、设备模式启动卡住确认DTS配置与硬件匹配驱动不生效检查内核配置和模块加载顺序分区挂载失败核对parameter.txt中的地址和大小5. 高级调试技巧当系统无法正常启动时串口调试是最直接的排查手段。RV1126 EVB板通常预留了调试串口UART2配置参数为波特率1500000数据位8停止位1无校验U-Boot常用命令printenv # 查看环境变量 setenv bootargs consolettyFIQ0,1500000 # 设置启动参数 tftp 0x02000000 zImage # 通过网络加载内核 bootm 0x02000000 # 启动内核内核日志等级调整在启动参数中添加loglevel8 # 0-8数字越大日志越详细通过sysfs调试驱动# 查看I2C设备 ls /sys/bus/i2c/devices/ # 读取摄像头寄存器 i2ctransfer -y -f 1 w10x30 0x00 r1 # CAN接口状态 ip -details link show can06. 性能优化建议RV1126作为AIoT芯片合理的性能调优能显著提升系统响应速度内存优化调整zRAM配置/etc/init.d/S02zram优化CMA分配内核参数添加cma64M启动加速精简init.d脚本使用并行启动# 在/etc/inittab中添加 ::sysinit:/etc/init.d/rcS boot 预链接库文件prelink -amR /usr/libNPU使用建议确保rknn_server服务已启动使用专用内存区域修改dts的reserved-memory监控NPU负载cat /sys/kernel/debug/rknpu/load实际开发中发现合理配置SD卡分区能显著提升IO性能。建议将频繁读写的目录如/var/log挂载到tmpfs# 在/etc/fstab中添加 tmpfs /var/log tmpfs defaults,size16M 0 0
http://www.gsyq.cn/news/1389105.html

相关文章:

  • 全球微压氧舱市场深度分析报告
  • 告别千兆以太网调试噩梦:用Zynq/ZedBoard实测RGMII-ID与Original模式差异
  • 从理论到实践的全面开展
  • 全球微生物学检验市场深度研究报告
  • 为什么你的鼠标总感觉不够精准?解锁专业鼠标性能测试的秘密
  • TDC-GPX2高精度时间测量实战:在没有专业仪器时,如何用FPGA自校准与验证数据?
  • 三分钟掌握:如何用bili2text将B站视频快速转为文字稿
  • 不要错过这 10 个本周火火火的 GitHub 开源项目。
  • 【实战指南】Beyond Compare密钥生成:三步解锁专业版完整功能
  • 智能体编码实践复盘:从AI辅助开发到工程化落地的挑战与优化
  • 排序算法完全指南(六):希尔排序深度详解
  • Android Studio中文语言包:5分钟打造母语开发环境的完整指南
  • 杭州闲置名包变现攻略:5 家店价格对比 - 合扬奢侈品交易中心
  • 2026年5月19日博客精选
  • Pandas去重不是删重复行,而是对齐业务语义的数据清洗核心
  • 解决Keil MDK中Event Recorder内存初始化警告
  • AI知识库,是捷径吗?
  • 深度学习计算:打开工具箱,从“基础用户“升级为“高级用户“
  • 从Blender到虚幻引擎:3D资产转换的终极解决方案
  • 【创新未发表】绿电直连园区渗透率提高对电力系统运行的影响分析研究(Matlab代码、Python、数据、word论文)
  • 微信聊天记录导出工具:3步完成iPhone微信数据完整备份
  • 某二手车 数据采集逆向分析verify-token
  • QMCDecode终极指南:轻松解密QQ音乐加密音频,实现全平台播放自由
  • TVA在电子元器件领域的创新应用(8)
  • 从对抗到协作:开发者如何利用AI工具重构工作流提升交付效率
  • STM32 CAN扩展帧过滤器配置踩坑记:为什么我的0x04FB2028报文收不到?
  • 如何用开源工具实现PNG转SVG的智能矢量化转换
  • 5分钟解锁WeMod高级功能:Wand-Enhancer完全指南
  • 找靠谱无油压缩机公司?源头厂家直供 节能静音设备 售后覆盖周边区域 - GEO排行榜
  • 7.Hermes Skills,才是真正的成长机制