前言:
本文所使用的开发板是迅为电子的RK3568开发板,Linux源码包也是从的开发板自带资料中获取到的,有兴趣者可自行购买(话说最近瑞芯微的芯片真的很火啊)
目录
SDK 包说明:
SDK 包源码简要
进入源码目录有下图的文件目录, 如下图所示:
从上图可以看出有很多文件夹, 我们讲解一下每个目录或者文件的作用:
app : 存放上层应用程序的目录, 主要是 qcamera/qfm/qplayer/settings 等一些应用程序。
buildroot : 基于 buildroot (2018.02-rc3) 开发的根文件系统。
build.sh : 编译用的脚本, 使用方法后面会教。
debian : 基于 debian 10 开发的根文件系统。
device/rockchip : 存放每个平台的一些编译和打包固件的脚步和预备文件。
docs : 存放 RK 开发指导文件、 平台支持列表、 工具使用文档、 Linux 开发指南等。
envsetup.sh : 要修改文件系统时候要设置的环境脚本。
external : 存放相关的库, 包括音频, 视频等。
kernel : kernel 源码。
Makefile : 整个 SDK 包编译的 Makefile。
mkfirmware.sh : 固件打包使用的脚本, 默认在当前路径下的 rockdev 目录。
prebuilts : 存放交叉编译工具链。
rkbin: 存放固件和工具。
rkflash.sh : linux 下的系统烧录脚本。
rockdev: 存放编译输出固件的目录(整个 SDK 包编译完成后就会创建)。
tools : 存放固件和工具的目录。
u-boot : U-boot 源码目录。
yocto: 基于 yocto gatesgarth 3.2 开发的根文件系统。
模块代码目录相关说明
什么叫做模块代码? 一个完整的 SDK 包除了 kernel、 u-boot、 buildroot、 Debian 和 yocto
之外, 还需要提供上层的第三方库和 APP, 第三方库和 APP 合起来叫做模块代码。 比如: 可
以做监控摄像头可以参考 common_algorithm 代码。 一个 SDK 包包含了很多产品的应用代码。
部分模块代码目录路径 含义 | |
externel/linux-rga | Raster Graphic Acceleration(RGA2) |
externel/recovery | recovery 和 Rockchip 升级代码 |
externel/rkwifibt | Wi-Fi 和 BT |
externel/rk_pcba_test | PCBA 测试代码 |
externel/isp2-ipc | 图像信号处理服务端 |
externel/mpp | 编解码代码 |
externel/camera_engine_rkaiq | 图像处理算法模块 |
externel/rknpu2 | npu 驱动 |
externel/common_algorithm | 音视频通用算法库 |
externel/rknn-toolkit2 | 模型转换、 推理和性能评估的开发套件 |
externel/CallFunIpc | 应用进程间通信代码 |
app/multivideoplayer | Buildroot 桌面多路视频播放器应用源码 |
app/qcamera | Buildroot 桌面相机应用源码 |
app/qfm | Buildroot 桌面文件管理应用源码 |
app/qsetting | Buildroot 桌面设置应用源码 |
app/qplayer | Buildroot 桌面多功能播放器源码 |
设置屏幕配置
在源码编译之前首先要确定自己想要使用的屏幕, 然后修改源码, 编译镜像, 烧写镜像。
如下图所示:
第一步: 确定要使用的屏幕种类, 屏幕种类选择如下所示:
iTOP-3568 开发板支持以下种类屏幕:
- 迅为 LVDS 7 寸屏幕
- 迅为 LVDS 10.1 寸 1024*600 屏幕
- 迅为 LVDS 10.1 寸 1280*800 屏幕
- 迅为 MIPI 7 寸屏幕
- 标准 HDMI 屏幕(通过 HDMI 线连接)
- 标准 HDMI 屏幕&#