【ELF-RK3506开发板】构建AI编程环境
本文介绍了使用飞凌嵌入式ElfBoard RK3506开发板构建AI开发环境的全过程。首先展示了开发板硬件配置和基础连接设置,包括串口登录和网络配置。随后详细讲解了在WSL2环境下搭建交叉编译工具链的步骤,并重点演示了如何利用TRAE AI编程工具自动生成测试程序代码和任务配置文件。通过实际案例展示了从代码生成、交叉编译到远程部署运行的完整流程,体现了AI辅助开发在嵌入式领域的应用价值。文章最后指
目录
前言
新年伊始,飞凌嵌入式旗下的教育品牌ElfBoard一口气发布了4款新开发板,很开心有机会第一时间体验其新产品。正好自己最近在学习使用TRAE IDE进行AI编程,今天正好拿ELF-RK3506开发板练手,尝试构建其开发的AI环境。
RK-3506开发板开箱
串口连接
root@elf3506-buildroot:~# uname -a
Linux elf3506-buildroot 6.1.99+ #1 SMP PREEMPT Fri Nov 7 10:16:11 HKT 2025 armv7l GNU/Linux
网口连接
root@elf3506-buildroot:~# udhcpc
udhcpc: started, v1.36.1
udhcpc: broadcasting discover
udhcpc: broadcasting select for 192.168.1.122, server 192.168.1.1
udhcpc: lease of 192.168.1.122 obtained from 192.168.1.1, lease time 86400
deleting routers
adding dns 192.168.1.1
root@elf3506-buildroot:~#
配置WSL编译环境
厂商提供了用于编译的VMWare环境,不过我没有用,还是喜欢使用Windows自带的WSL2。下面介绍一下如何配置WSL编译环境。
首先从厂商的资料云盘上下载两个软件包:ELF-RK3506 Linux学习 | ElfBoard 官网-嵌入式Linux开发板/学习板-让嵌入式学习释放无限可能

test@Star:~$ tar -vxf gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf.tar.bz2
test@Star:~$ tar -vxf 3506-toolchain.tar.bz2
解压后执行一下下面的命令测试是否正常:
gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc -v

TRAE环境构建
接下来就要进入AI编程工具TRAE的环境构建了。TRAE是豆包推出的一个AI编程工具,它提供完整的 IDE 核心能力,支持多种主流编程语言与热门开发框架,集成代码编辑、智能补全、调试运行、版本控制等一体化工具链。适用于独立开发者、学生及自由职业者,用于项目开发、技术学习与实践探索。国内用户可以从下面网站下载最新版本:TRAE - The Real AI Engineer | TRAE - The Real AI Engineer
https://www.trae.cn/
WSL连接
TRAE 的远程开发功可以支持WSL,使你能够像连接远程服务器一样,直接在本地 WSL 环境中编写、调试和运行代码。在TRAE的官方文档中对这部分有详细的介绍,直接安装步骤进行即可:使用 WSL 开发 - 文档 - TRAE CN。

连接成功之后,就可以打开一个WSL中目录,假定是simple。

生成测试程序
我们采用TRAE的默认配置,模型是Auto,采用Builder方式工作,输入如下提示词:
完成如下任务:
1. 创建一个基于Linux控制台的测试程序,验证编译工具链,简短有趣
2. 创建vscode中进行编译的任务文件,交叉编译命令为~/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc
3. 创建vscode中进行SSH连接的任务,服务器IP为192.168.1.122,拷贝编译得到的可执行文件到服务器上,并进行执行。
在上面的提示词,我使用的是vscode,而不是TRAE IDE,一是因为TRAE IDE本身就是基于VSCode,二是因为如果用TRAE IDE,则模型不能很好地处理。
TRAE开始勤奋的工作,开始生成C程序代码(test_program.c)和任务代码(task.json)。

在检查代码时,我发现自己刚才忘了提供服务器的用户名和密码,导致生成的task.json有点小问题,我告诉TRAE“忘了告诉你服务器的用户名是root,没有密码”。TRAE马上把这个问题帮我改过来了。
编译程序
现在使用TRAE IDE菜单上的“终端→运行生成任务”,就可以交叉编译生成可执行文件test_program了。

部署并运行程序
接下来使用TRAE IDE菜单上的“终端→运行任务..”,然后选择“Deploy and Run via SSH”就可以将文件拷贝到开发板上了。
在运行程序时遇到一个问题,就是chmod命令执行失败,导致整个任务失败。

把错误信息反馈给TRAE,它很快分析出来是对JSON中转义字符处理不当导致错误,并进行了修正。
再次运行修改之后的代码,就可以得到正确的结果了(带有彩色的文字输出)。

最终生成的代码
贴一下最终的代码供大家参考。
C语言代码
test_program.c代码如下:
#include <stdio.h>
#include <unistd.h>
int main() {
// 彩色ASCII艺术:笑脸
const char *colors[] = {
"\033[31m", // 红色
"\033[33m", // 黄色
"\033[32m", // 绿色
"\033[34m", // 蓝色
"\033[35m", // 紫色
"\033[36m" // 青色
};
const char *reset = "\033[0m";
printf("\n");
printf("%s ************************** %s\n", colors[0], reset);
printf("%s * * %s\n", colors[1], reset);
printf("%s * Hello from Console! * %s\n", colors[2], reset);
printf("%s * * %s\n", colors[3], reset);
printf("%s * \033[1m😊 ASCII Art! 😊\033[0m * %s\n", colors[4], reset);
printf("%s * * %s\n", colors[5], reset);
printf("%s ************************** %s\n", colors[0], reset);
printf("\n");
// 简单的动画效果
printf("%sLoading", colors[2]);
fflush(stdout);
for (int i = 0; i < 3; i++) {
usleep(500000); // 500ms
printf(".");
fflush(stdout);
}
printf("%s Done! %s\n\n", colors[3], reset);
// 系统信息
printf("%sSystem Info: %s\n", colors[1], reset);
printf("- Architecture: ARM\n");
printf("- OS: Linux\n");
printf("- Compiler: GCC\n\n");
printf("%sTest completed successfully! %s\n\n", colors[5], reset);
return 0;
}
任务文件
vscode/task.json文件如下:
{
"version": "2.0.0",
"tasks": [
{
"label": "Build (ARM Cross-Compile)",
"type": "shell",
"command": "~/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc",
"args": [
"-o",
"test_program",
"test_program.c"
],
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": true,
"clear": false
},
"problemMatcher": [
"$gcc"
]
},
{
"label": "Clean",
"type": "shell",
"command": "rm",
"args": [
"-f",
"test_program"
],
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": true,
"clear": false
},
"problemMatcher": []
},
{
"label": "Deploy and Run via SSH",
"type": "shell",
"dependsOn": ["Build (ARM Cross-Compile)"],
"command": "bash",
"args": [
"-c",
"scp test_program root@192.168.1.122:/tmp/ && ssh root@192.168.1.122 \"chmod +x /tmp/test_program && /tmp/test_program\""
],
"presentation": {
"echo": true,
"reveal": "always",
"focus": true,
"panel": "shared",
"showReuseMessage": true,
"clear": false
},
"problemMatcher": []
}
]
}
结束语
RK-3506开发板基于Linux,为嵌入式系统开发提供了很好的基础平台,而TRAE这样的AI编程工程的引入使得嵌入式开发变得非常简单而有趣。
更多推荐





所有评论(0)