RK356x-6: mipi触摸屏的配置和调试

本文详细记录在基于RK356x-SDK最小系统上,配置mipi接口的触摸屏,调试直到完全正常显示的过程,让和我一样的新手无压力搞定mipi显示屏在RK356x芯片上的应用。

如何配置最小系统,请看:RK356x-5: 最小系统配置和运行

mipi触摸屏配置,分两部分,一部分是显示屏,一部分是触摸板。

注意,本文配置涉及到两个设备树文件,是在《RK356x-SDK开发入门》中自定义的:rk3566-test.dtsi和rk3566-test-base.dtsi

链接:RK356x-4. RK356x-SDK开发入门

目录

一、显示屏部分

1. 打开dsi节点

2.打开VOP(视频输出处理器)节点

3.打开多媒体处理器(Multi-Media Processor)相关单元节点

4. 背光配置

5.复位脚配置

6. 电源脚配置

7.配置dsi_panel

        第1步:确定屏的规格

        第2步:填写屏的初始化序列

        第3步,填写屏的退出序列

        第4步,修改屏的时序

二、触摸部分

1.配置I2C节点

2.启用对应驱动

3. 配置复位脚和IN脚

4. 电源脚

5. 修改驱动文件


一、显示屏部分

        RK356x-SDK自带了mipi驱动,在kernel/drivers/gpu/drm/panel/下,因此只需要正确配置了各节点,即可点亮mipi屏

1. 打开dsi节点

        查看主板的原理图,mipi显示屏接口接在芯片的哪个dsi口上,我的原理图是这样的:

        显示屏的接口引脚名就可以判断得出,它接在DSI1上面。因此,在rk3566-test-base.dtsi中,找到dsi1节点打开(注:下文说的打开即:将状态的disabled变成okay)它,同时打开子节点dsi1_panel:

        在rk3566-test.dtsi中删除dsi1节点,因为这里会重新关闭上面打开的节点,同时打开&route_dsi1,以显示开机logo。

2.打开VOP(视频输出处理器)节点

        RK控制显示的单元VOP有三个,我们选择第2个,即VP1,因此:

        在rk3566-test.dtsi中,打开节点&video_phy1,&dsi1_in_vp1

        

        

        在rk3566-test-base.dtsi中,打开&vop,&vop_mmu以启用VOP

3.打开多媒体处理器(Multi-Media Processor)相关单元节点

        在rk3566-test-base.dtsi中,打开&mpp_srv(Media process platform,MPP多媒体处理服务),&gpu(图形处理单元),&vdpu(视频显示相关),&vdpu_mmu,&vepu(视频显示相关),&vepu_mmu,&dfi(加速数据传输),&dmc(内存优化,加快响应),&rk_rga(加速2D图形显示),&rkvdec(视频解码),&rkvdec_mmu,&rkvenc(视频编码),&rkvenc_mmu,&jpegd(JPEG解码,不打开,MPP可能无法解码有些视频),&jpegd_mmu。

        注意:截图只显示打开了其中一部分,实际dts中需要将文案里提到的节点都打开

4. 背光配置

        在dsi1节点中的dsi1_panel子节点,变量backlight是赋值的backligh1:

backlight = <&backlight1>;

        对照原理图如下,我的背光灯是GPIO0_C3

        它连的是芯片的PWM4上:

        因此,找到backlight1节点,修改节点的pwm,并使最高频率变成50000:

backlight1: backlight1 {
		compatible = "pwm-backlight";
		pwms = <&pwm4 0 50000 0>;
		brightness-levels = <

         然后打开pwm4节点:


&pwm4 {
	pinctrl-names = "active";
	pinctrl-0 = <&pwm4_pins>;
	status = "okay";
};
5.复位脚配置

        查看原理图,我的复位脚用了GPIO4

### MIPI屏幕调试方法与教程 MIPI屏幕的调试通常涉及硬件软件两方面的操作。以下是针对MIPI屏幕调试的一些关键点以及具体的调试步骤: #### 1. **了解MIPI协议基础** 在开始调试之前,理解MIPI DSI(Display Serial Interface)的基础概念至关重要。这包括数据传输机制、帧结构以及信号定义等内容[^1]。 #### 2. **参考具体平台的调试指南** 不同的SoC平台可能有不同的实现方式。例如,在展锐平台上,可以通过《MIPI屏幕调试指南》获取详细的调试流程注意事项[^2]。该文档不仅适用于硬件工程师,也适合嵌入式开发人员阅读并实践。 #### 3. **关注上电初始化时序** 屏幕正常工作的一个重要前提是其上电初始化时序被正确配置。对于RK3588这样的高性能处理器来说,LCD模块的电源管理与时钟设置尤为重要[^4]。建议仔细查阅相关技术文档中的时序图,并将其映射到实际电路设计中。 #### 4. **处理触摸屏部分** 尽管MIPI主要用于显示功能,但如果设备还集成了触控功能,则需额外注意I2C接口芯片及其对应的Linux驱动程序开发过程[^3]。如果发现某些特定场景下无法正常使用触摸屏,应优先排查是否有固件版本不匹配或者寄存器配置错误的情况发生。 #### 5. **利用开源资源加速学习曲线** 开源社区提供了许多宝贵的参考资料,比如GitCode上的`a156f`项目就包含了丰富的案例分析技术分享。通过研究这些材料能够快速积累经验从而减少摸索时间成本。 ```bash # 示例命令:克隆远程仓库至本地查看相关内容 git clone https://gitcode.com/Open-source-documentation-tutorial/a156f.git cd a156f && ls -l ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值