Luckfox Lyra Plus 如何编译启动Linux + MCU RTOS / Bare-metal 混合部署方案,并调试MCU的代码

  • 您好 编译请在SDK下使用./build.sh lunch 选中最后一个custom,然后选中 rk3506g_buildroot_spinand_amp_defconfig ,修改对应的amp_linux_mcu.its文件将configurations/conf/loadables 修改为 “mcu”
    PixPin_2025-09-05_09-47-00.png
    然后重新执行完整编译,开发调试相关参考
    Downloaded 195 times
  • compileError.png
    compile.png
    你好,已经按你的方法去进行编译了,但执行打包的时候估计发现了编译错误,gcc_bus_m0.ld文件是否还需要调整一下不
    gcc.png
  • 实测最新版本的 SDK 仅修改 amp_linux_mcu.its 可以编译通过,请检查您做的其他修改
  • 下载的sdk版本是Luckfox_Lyra_SDK_250815.tar.gz,那这个是不是最新的呢
  • Crocodile wrote: 2025-09-08 2:06 实测最新版本的 SDK 仅修改 amp_linux_mcu.its 可以编译通过,请检查您做的其他修改
    现在发现部署的环境导致gcc_bus_m0.ld:149 cannot move location counter backwards (from 000000000000edb0 to 0000000000007c00)打包失败,之前的这个环境是编译RV1106的,环境上需要做些什么修改不
  • Luckfox_Lyra_SDK_250815.tar.gz是最新的,我拉取之后操作步骤是 修改device/rockchip/rk3506/amp_linux_mcu.its 添加 “mcu” -> ./build.sh lunch -> [7] custom -> 15. rk3506g_buildroot_spinand_amp_defconfig 然后执行 ./build.sh 完整编译没有报错,单独使用 ./build.sh amp 也没有报错
    RV1106 的环境和 RK3506 的没有冲突,RV1106 mcu 使用的risc-v 的编译工具,现在看您的报错信息应该是链接的时候检测到分配冲突,推荐是用git status 查看做了什么改动,或者定位到gcc_bus_m0.ld 149 行“ . += __HEAP_SIZE;” 分析堆的分配
  • Crocodile wrote: 2025-09-10 2:58 Luckfox_Lyra_SDK_250815.tar.gz是最新的,我拉取之后操作步骤是 修改device/rockchip/rk3506/amp_linux_mcu.its 添加 “mcu” -> ./build.sh lunch -> [7] custom -> 15. rk3506g_buildroot_spinand_amp_defconfig 然后执行 ./build.sh 完整编译没有报错,单独使用 ./build.sh amp 也没有报错
    RV1106 的环境和 RK3506 的没有冲突,RV1106 mcu 使用的risc-v 的编译工具,现在看您的报错信息应该是链接的时候检测到分配冲突,推荐是用git status 查看做了什么改动,或者定位到gcc_bus_m0.ld 149 行“ . += __HEAP_SIZE;” 分析堆的分配
    你好,我重新查看了我修改的文件,按照你的方法去编译,确定编译通过打包成功了,谢啦~
    rtt_problem.png
    现在有另外的一个问题,原来MCU是配置裸机Bare-metal系统的,按上图修改了amp_linux_mcu.its文件想启动RTOS系统,烧录后发现出现了下图的错误
    rtt_problem2.png
    ,启动RTOS系统该怎么配置的呢,还有如何通过串口调试的呢
  • 根据 Rockchip_RK3506_Quick_Start_Linux_CN.pdf 文档的说明目前 RK3506 的 MCU 前只提供了裸核 Bare-Metal 的支持,SDK中rtos 目录下也没有 rk3506-mcu 的 bsp 示例
  • Crocodile wrote: 2025-09-13 2:13 根据 Rockchip_RK3506_Quick_Start_Linux_CN.pdf 文档的说明目前 RK3506 的 MCU 前只提供了裸核 Bare-Metal 的支持,SDK中rtos 目录下也没有 rk3506-mcu 的 bsp 示例
    哦哦,好的,还有一个问题想请教一下,修改了HAL或者RTOS的代码了以后,有没有办法能够局部编译,然后烧录到开发板的不,如果每次都得通过根目录./build.sh全编译再烧录update.img , 开发效率会相当低哦