初探RK3506 嵌入式开发
开始
在开学的前几天,我在京东app上刷到了一些花花绿绿的电路板。 我怀着好奇心点进去看了看,居然里面还能内置Linux系统。
其实一开始我是对嵌入式开发一窍不通的,我有在b站上刷到过stm32等等的一系列嵌入式术语,看着还是很高级的。 我感觉很炫酷,很有创造力的一个东西。
所以我就去看了评论区,然后又去网上搜了又搜,一看,哇。竟然能做很多东西! 比如像小手表,小型玩具一样的东西,看了看介绍,竟然地铁LCD / 报站屏幕都会用到嵌入式。
它叫RK3506,是我看中的第一个板子。

他长这样
于是我就买回来了。
这张开发板的厂商是 (武汉万象奥科电子有限公司),或许是促销活动,花了我145¥。 很不错,还有一个五寸触摸的显示屏,60帧。
启动
刚开始的时候,还有点担心。
到底该咋接线啊,是用usb吗,可不可以电源用充电器接到插排上呢?
会不会把开发板烧坏了啊。
于是我就去拷打了一会DeepSeek怎么用。
其实刚接触的时候遇到了一些神秘问题。
其一
诶,屏幕怎么一会亮一会灭的?这怎么回事,是烧坏了吗? 灭的时候一看指示灯也跟着灭。
后来我突发奇想,会不会是电脑的USB接口电压不够呢?我从最右侧的插口换到了左侧的一个插口,果然不这样了。

截图是因为这个博客不能上传视频。
这是厂商的一个demo,很简朴,是一个类似智能家居的系统,但是它能触屏诶!像一个小手机一样。
其二
简单的了解过后,我开始打算在上面开发一些程序了。
但是很多坑啊!
从学过嵌入式的朋友了解了叫一个烧录的东西。
规范一点是这样的(摘自DeepSeek):
烧录的核心操作是将电脑上编写好的软件代码,通过特定的物理设备(烧录器)和数据线,传输并固化到硬件芯片的存储单元中。
- 这个过程有点像把文件从电脑复制到U盘里。
- 区别在于:U盘复制的是文档或视频,而烧录复制的是控制设备运行的“机器码”(0和1)。
后来一看也用不到。厂家直接烧录进去了Linux 6.1进去,对我来说少了很多事。
但是又有很多让我焦头烂额的环节。
1 交叉编译
简单了解过后,发现开发板上的程序架构和环境不一样。比如Qt Widget项目,就不能用官方的任何Qt版本,需要从厂商那里搞到开发环境的SDK以及交叉编译工具链。
但是也很头疼。
编译需要好久!我为了考虑周全,把SDK里的关于Qt的选项选了好多。
其实一开始想以WSL平台编译的,但是当我一运行build.sh的时候发现厂商拒绝使用WSL环境,直接终止了编译环节。
那怎么办,我只能去虚拟机搞了,于是有了一段找Ubuntu镜像的环节。
到最后终于是弄好了。
2 写好的程序怎么样放进开发板里呢?
一开始我想着用ssh或者是scp命令。
但是运行ifconfig发现是这样的。
root@rk3506-buildroot:/root# ifconfigcan0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 UP RUNNING NOARP MTU:72 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:10 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:51
eth0 Link encap:Ethernet HWaddr 32:D4:67:0A:A5:66 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:52 Base address:0x8000
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
wlan0 Link encap:Ethernet HWaddr 4C:A3:8F:DF:5B:02 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
root@rk3506-buildroot:/root#没有网络配置!ssh计划立马泡汤。
其实也有想过主动去弄网络配置的,但是太麻烦被劝退了,直到我看见了官方开发文档里面的内容。
有一个叫adb的东西
以下摘自 万象奥科 -电脑与开发板文件拷贝
使用USB-C连接到开发板J2 USB Device接口,如果是Linux平台,就可以直接使用adb操作开发板了;如果是Windows平台,需要先安装USB设备驱动,才能使用adb。
adb工具存放在RKDevTool.zip压缩包中,解压后可在RKDevTool\RKDevTool_Release\bin下看到
adb.exe文件。
上传文件到HD-RK3506-MINI开发板
PS F:\> adb push file_name /oem注:file_name为电脑当前路径下的文件,/oem为开发板文件系统上的一个文件夹。
从HD-RK3506-MINI开发板下载文件到电脑
PS F:\> adb pull /oem/file_name .注:/oem为开发板文件系统上的一个文件夹,file_name为电脑当前路径下的文件。
棘手的问题立马被解决了。
结语
暂时就写这些吧,现在是凌晨0:54,有点累了。
才不是水了一篇文章
其实是等sdk编译过程中一点小感受,一编译就要好久,我真的没时间去等它了。

你编译去吧,我要睡觉了。
部分信息可能已经过时






