屏幕mipi相关的协议未展开详细说,单展开的话估计要讲好多,因为点屏的容错率很高。
如果点不亮请按照以下步骤排除原因:
1、测电压,测屏幕背光电压、vcc、vddio、pwm这些电压是否都正常;
2、检查初始化代码,格式是否有转换错误,涉及mipi协议;
3、如果以上2点正常,问厂家要bist代码测试,如果能显示,则检查屏幕上电时序,上电时序要和厂家给的一致(规格书中),不能显示,检查rk平台端是否正常将初始化数据发送出去了,可以逻辑分析仪或者示波器抓取初始化查看;
4、用HDMI检查下屏幕是否坏掉,以免一直在做无用功。
硬件环境:RK3568
软件环境:Ubuntu
虚拟机:Ubuntu 20.04
目录
2.2.1 依赖环境(不同家的核心板可能依赖环境不同,但大差不差,根据手册安装就ok):
一、虚拟机
1.1 虚拟机的安装
网上很多教程,很多大佬写的很详细,搜一下就可以,我这里就不重复写了。
1.2 搭建环境
我这边从新建虚拟机开始演示
1.3 新建虚拟机
文件-新建虚拟机,选择典型就ok
直接安装iso镜像文件,我安装的版本是20.04的,太低的版本我觉得编译太慢了,就不考虑了,取名字设置密码。
然后下一步
磁盘容量根据你电脑配置给吧,200、500都可以
二、SDK源码全编译
2.1 准备SDK文件
接下来需要准备以下文件,不同的板子命名不同,但大致路径就是【rk356x】->【SDK内核编译】下,第一个文件是校验文件,第二个是3568的SDK内核文件压缩包,第三个是ubuntu的rootfs的文件。
将那三个文件上传到虚拟机,将两个压缩的解压到根目录(最好别用共享文件夹,亲测不行)
2.2 安装编译环境
2.2.1 依赖环境(不同家的核心板可能依赖环境不同,但大差不差,根据手册安装就ok):
安装有报错就在网上搜索错误信息,根据教程安装,一般来说低版本的ubuntu报错的可能性小一些。
sudo apt install git bc bison build-essential curl flex libsdl1.2-dev
sudo apt install g++-multilib gcc-multilib gnupg gperf libncurses5-dev libncurses5
sudo apt install imagemagick lib32ncurses5-dev lib32readline-dev squashfs-tools
sudo apt install lib32z1-dev liblz4-tool xsltproc libssl-dev libwxgtk3.0-dev
sudo apt install libxml2 libxml2-utils schedtool lzop pngcrush rsync
sudo apt install yasm zip zlib1g-dev python device-tree-compiler
sudo apt install python-pip gawk openjdk-8-jdk u-boot-tools patchelf expect
sudo pip install pyelftools
2.2.2 MD5校验文件完整性
md5sum -c *.md5
2.2.3 解压
tar -zxvf rk356x-linux-*.tar.gz
ls -al
2.2.4 还原文件
解压后只有一个.git文件,需要还原
git reset --hard
注意:请在Linux下操作 并且安装了git,还原之后文件如下
我之前在共享文件夹下还原,文件会少一部分,具体原因不明
2.3 编译完整镜像
三个文件的关系如下:
linux->
->rk3568-linux-20240531
->ubuntu
->MD5
在rk3568-linux-20240531文件夹下执行以下指令:
./build.sh lunch
根据提示选择对应你板子的选项,我的是10
然后执行./build.sh
编译完成(时间稍微有点长,我编译了3个小时左右,耐心等待)
三、修改设备树
我选择的是mipi屏幕,所以需要修改设备树,修改文件路径是:linux/rk356x-linux/kernel/arch/arm64/boot/dts/rockchip下的mipi设备树文件,一般是需要修改两个文件,有的是一个文件下,基本上就是1、配置显示相关参数;2、打开mipi。以下是配置显示相关设备树修改步骤
3.1 pwm
点亮阶段一般不需要修改
3.2 dsi0
1-是mipi速率,不用写,自动计算
2-rst延时,根据屏幕手册配置
3-mipi lanes数量,需要配置
4-屏幕初始化代码(问屏幕厂家要)
3.3 显示配置
1-时钟速率:根据屏幕手册配置
2-屏幕分辨率
3-proch(屏幕厂家提供)
3.4 打开mipi显示
至此,设备树显示已经配置ok,这时可以进行下一步
四、编译内核
整个编译SDK太大,我们修改了设备树,只需要编译内核就可以了。
在此目录下
编译成功
编译成功后会在rockdev文件下,生成boot.img文件
1-编译内核生成的
2-全编译生成的
五、系统镜像烧录
我们编译完成之后开始烧录,打开瑞芯微的烧录工具(记得提前安装驱动)
5.1 全编译的镜像文件烧录
如果你的板子没有系统,执行这个步骤
5.2 boot.img文件烧录
如果修改内核,编译内核后,执行这个步骤
六、验证
烧录验证-点亮
以上是我的点屏经验,欢迎交流!