5. 屏幕模组¶
5.1. mipi屏¶
LubanCat-RK系列板卡支持野火自家提供的mipi屏以及树莓派5寸屏(需要转接板)
屏幕名称:野火mipi屏
屏幕类型:LCD
分辨率:1080x1920
色彩:RGB888
接口:四通道mipi-dsi
购买链接: (野火)5.5寸电容屏1920X1080 MIPI接口5点触控 颜色深度24位 RGB888
屏幕名称:树莓派5寸屏(需要转接板)
屏幕类型:LCD
分辨率:800x480
色彩:RGB888
接口:四通道mipi-dsi
购买链接(仅供参考): (淘宝)树莓派屏幕购买链接
5.2. 接入mipi屏¶
将刷入专用镜像:Image-rk3568_lubancat_2_mipi1080p,rk3568支持MIPI+HDMI显示。rk3566默认关闭。
注意
接入HDMI时,两边会有黑边现象,这是因为HDMI作为副屏会根据主屏MIPI的宽高比进行缩放。
LubanCat-RK系列板卡的mipi接口类型都一样,使用的都是30pin的fpc排座,如图下

与mipi屏幕的连接如图下

危险
mipi-dsi接口不支持热插拔,请勿在上电的时候安装或者卸载屏幕, 上电时安装和卸载可能会导致板卡短路, 轻则板卡保护关机,重则损坏芯片的接口或者烧坏芯片
上电启动板子,开机显示:

5.3. 设置屏幕横屏方法¶
我们需要在系统启动时配置好屏幕的参数,并通过mipi接口发送正确的信号给屏幕控制器。这样,屏幕就能正常显示系统的图形界面,方便用户操作和交互。
提供SDK默认竖屏,需要改横屏请参考我们修改方法如下: 找到文件修改:
rk356x:android11-dev/device/rockchip/rk356x/BoardConfig.mk
rk3588:android12-dev/device/rockchip/rk3588/BoardConfig.mk
屏幕信息参考下:
#rotate screen to 0, 90, 180, 270
#0: ROTATION_NONE ORIENTATION_0 : 0 #竖屏
#90: ROTATION_RIGHT ORIENTATION_90 : 90 #横屏
#180: ROTATION_DOWN ORIENTATION_180: 180
#270: ROTATION_LEFT ORIENTATION_270: 270
将Recovery和Android系统改为横屏:
- TARGET_RECOVERY_DEFAULT_ROTATION ?= ROTATION_NONE
+ TARGET_RECOVERY_DEFAULT_ROTATION ?= ROTATION_RIGHT
- SF_PRIMARY_DISPLAY_ORIENTATION ?= 0
+ SF_PRIMARY_DISPLAY_ORIENTATION ?= 90
Android12:禁用dsi1,防止启动vp2与3导致卡死系统
// 野火10.1寸屏幕
#include "rk3588s-lubancat-dsi0-ebf410177_800x1280.dtsi"
- #include "rk3588s-lubancat-dsi1-ebf410177_800x1280.dtsi"
+ #include "rk3588s-lubancat-dsi1-ebf410177_800x1280.dtsi" //禁用dsi1
以上修改完成后,重新编译刷上开机屏幕已是横屏了。

5.4. 修改开机logo¶
选择自己想要修改的logo图片,将图片底色设置为透明底色,并将格式转换为24bit或者32bit的bmp格式,控制图片大小在4MB左右。
将得到的bmp格式的图片复制成三份,分别重命名为logo.bmp、logo_boot.bmp、logo_kernel.bmp。替换安卓源码kernel目录下原有的文件,这就完成了启动logo的替换。
重新编译安卓镜像,烧录到板卡上即可。
若编译过程中出现以下错误,可修改:android11/device/rockchip/common/BoardConfig.mk文件,将其中的42606592改为55373824(对应自己报错的大小,有两处)。然后继续编译即可

5.5. 修改Android动画¶
概述
Android 开机动画是一个存储在 bootanimation.zip 文件中的无压缩 ZIP 档案,通常位于 /system/media/目录。该文件包含 PNG 图片序列和一个 desc.txt 配置文件,用于定义动画的分辨率、帧率和播放方式。通过替换 bootanimation.zip,您可以自定义开机动画。
本教程将指导您:
创建一个新的 bootanimation.zip 文件,基于您的配置(分辨率 720x190,帧率 60 FPS,单部分动画)。
将新的 bootanimation.zip 安装到 Android 设备。
准备工作
所需工具
电脑:Windows、Mac 或 Linux 系统。
图像编辑软件:如 Photoshop、GIMP,用于创建或编辑 PNG 图片。
7-Zip 或 WinRAR:用于创建无压缩的 ZIP 文件。
ADB(Android Debug Bridge):用于将文件推送至设备(可在 Android SDK 中下载)。
设备要求
Android 设备(已启用 USB 调试)。
确保设备分辨率与动画配置匹配(本例为 720x190)。
步骤 1:创建新的 bootanimation.zip 文件
1.1 准备动画素材
创建 PNG 图片:
使用图像编辑软件创建一系列 PNG 图片,每张图片代表动画的一帧。
图片分辨率应为 720x190(与你的配置匹配)。
命名图片为连续编号,例如 0000.png, 0001.png, 0002.png 等,建议从 0000 开始。
确保图片格式为 PNG(支持最高 32 位),避免使用 JPG 或其他格式。
根据帧率 60 FPS,每秒需要 60 张图片。例如,5 秒动画需要约 300 张图片。
组织文件夹结构:
创建一个名为 bootanimation 的文件夹。
在 bootanimation 文件夹中,创建子文件夹 part0(根据你的配置 part0)。
将所有 PNG 图片放入 part0 文件夹。
示例结构:
bootanimation/
├── desc.txt
└── part0/
├── 0000.png
├── 0001.png
├── 0002.png
└── ...
1.2 创建 desc.txt 文件
编写 desc.txt:
在 bootanimation 文件夹中创建 desc.txt 文件。
根据你的配置(720 190 60 和 c 1 30 part0),内容如下:
720 190 60
c 1 30 part0
第一行:720 190 60
720:动画宽度(像素)。
190:动画高度(像素)。
60:帧率(每秒帧数,FPS)。
第二行:c 1 30 part0
c:动画类型,表示在系统启动完成时立即停止.
1:循环次数(1 表示播放一次)。
30:动画结束后暂停的帧数(以帧为单位,30 帧在 60 FPS 下约为 0.5 秒)。
part0:动画部分的文件夹名称。
注意:文件需使用 Linux 换行格式(LF),避免 Windows 的 CRLF 格式。可用 Notepad++ 或 VS Code 保存为 LF 格式。
确保文件正确:
确认 desc.txt 和 part0 文件夹名称与配置一致。
确保 PNG 文件按顺序命名,且无其他无关文件(如 Windows 自动生成的 thumbs.db)。
1.3 打包 bootanimation.zip
使用 7-Zip 打包:
打开 7-Zip,导航到 bootanimation 文件夹。
选中 desc.txt 和 part0 文件夹。
右键选择“添加到压缩包”。
设置:
压缩格式:zip
压缩级别:存储(无压缩,重要!)
输出文件名:bootanimation.zip
点击“确定”生成 bootanimation.zip。
验证 ZIP 文件:
确保 ZIP 文件未压缩(可打开检查文件大小接近原始 PNG 文件总和)。
确认内部结构正确:
bootanimation.zip
├── desc.txt
└── part0/
├── 0000.png
├── 0001.png
└── ...
连接设备调试:
将设备通过 USB 连接到电脑。
打开命令行(Windows CMD 或终端)
推送文件:
使用 ADB 将新 bootanimation.zip 推送到 /system/media/
adb root && adb remount
adb push 电脑路径\bootanimation.zip /system/media/bootanimation.zip
重启设备:
使用 ADB 或手动重启:
adb reboot
检查新动画是否生效。
替换源码sdk动画:
测试效果ok,将源码储存device/rockchip/common/bootanimation.zip,替换您修改的新动画文件bootanimation.zip,然后-Au编译最终完成。
调试与故障排除:
动画不播放,显示默认 Android 文本:
检查 bootanimation.zip 是否正确命名为 bootanimation.zip。
确保 ZIP 文件使用“存储”模式打包(无压缩)。
验证 desc.txt 格式正确(使用 LF 换行,无多余空格或空行)。
确保 PNG 文件命名连续且正确(如 0000.png 开始)。
黑屏或闪烁:
确保 PNG 文件分辨率与 desc.txt 中的 720 190 一致。
检查是否存在无关文件(如 thumbs.db)。
尝试将文件放置在 /system/media/
动画播放速度不正确:
确认 desc.txt 中的帧率(60 FPS)与 PNG 图片数量匹配。
调整图片数量或帧率以优化播放时长。