RK3399单MIPI屏调试

本文详细介绍了RK3399单MIPI屏的调试步骤,包括dts配置、命令序列设置及常见问题解决。通过对比RK3288,突出RK3399的配置差异,如节点配置和命令格式的不同。

RK3399单MIPI屏调试

RK3399单MIPI屏调试的步骤和RK3288的MIPI屏调试类似,只不过dts的书写方式有点不一样,首先需要根据电路原理图将enable和reset脚配置好,其次是根据屏的数据手册将屏的lane-rate以及屏的timings找到,具体的方法见我博客的Rockchip之RK3288解决MIPI屏花屏章节.

本文主要讲解与RK3288mipi屏配置dts的差异,首先看RK3399单mipi屏配置,如下:

&dsi {
        status = "okay";

        rockchip,lane-rate = <600>; 

		panel@0 {        
			compatible ="simple-panel-dsi";
			reg = <0>;
			backlight = <&backlight>;
			enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;    
			enable-delay-ms = <100>;
			prepare-delay-ms = <100>;
			reset-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>;      
			reset-delay-ms = <50>;
			init-delay-ms = <100>;
	
			dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
			            MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
			dsi,format = <MIPI_DSI_FMT_RGB888>;
			dsi,lanes = <4>;
			status = "okay";
	 
	        panel-init-sequence = [
				15 00 02 36 0A
				39 00 03 B3 0A 7F
				15 00 02 B4 00
				39 00 06 B5 4C 14 14 00 20
				39 00 08 B6 00 14 0F 16 13 9F 9F
				39 00 04 C0 00 0A 10
				15 0A 02 C2 6E
				39 00 0D C3 01 66 13 23 00 66 85 33 20 38 38 00
				39 00 06 C4 22 24 11 11 6D
				39 00 0A D0 00 37 52 17 01 04 70 45 05
				39 00 0A D1 00 37 52 17 01 04 70 45 05
				39 00 0A D2 00 37 52 17 01 04 70 45 05
				39 00 0A D3 00 37 52 17 01 04 70 45 05
				39 00 0A D4 00 37 52 17 01 04 70 45 05
				39 32 0A D5 00 37 52 17 01 04 70 45 05
				05 96 01 11
				05 00 01 29
	                ];
	       
			display-timings {
				native-mode = <&timing0>;
	
				timing0: timing0 {
					clock-frequency = <74250000>;
					hactive = <768>;
					vactive = <1024>;
					hback-porch = <10>;
					hfront-porch = <160>;
					vback-porch = <40>;
					vfront-porch = <16>;
					hsync-len = <160>;
					vsync-len = <10>;
					hsync-active = <1>;
					vsync-active = <1>;
					de-active = <0>;
					pixelclk-active = <1>;
				};
			};
		}; 
}

首先不一样的是节点配置方式,其次是命令的配置方式不一样,rk3399的命令配置需要把初始化命令写在

panel-init-sequence = [
				15 00 02 36 0A
				39 00 03 B3 0A 7F
				15 00 02 B4 00
				39 00 06 B5 4C 14 14 00 20
				39 00 08 B6 00 14 0F 16 13 9F 9F
				39 00 04 C0 00 0A 10
				15 0A 02 C2 6E
				39 00 0D C3 01 66 13 23 00 66 85 33 20 38 38 00
				39 00 06 C4 22 24 11 11 6D
				39 00 0A D0 00 37 52 17 01 04 70 45 05
				39 00 0A D1 00 37 52 17 01 04 70 45 05
				39 00 0A D2 00 37 52 17 01 04 70 45 05
				39 00 0A D3 00 37 52 17 01 04 70 45 05
				39 00 0A D4 00 37 52 17 01 04 70 45 05
				39 32 0A D5 00 37 52 17 01 04 70 45 05
				05 96 01 11
				05 00 01 29
];

把退出命令写在

panel-exit-sequence = [
];

命令的前面三个字节分别表示命令类型、延时和命令净荷长度。从第四个字节开始表示命令的有效 payload。这个字节数需要与第三个字节一致。
命令的类型有三种 : 0x05/0x15/0x39.
其中0x05命令类型是带1个参数,如:

		05 96 01 11

0x15命令类型是带2个参数,如:

		15 00 02 36 0A

0x39命令类型是带多个参数,即大于两个参数,如:

		39 00 0A D4 00 37 52 17 01 04 70 45 05

其中,这些命令就需要根据屏的数据手册去寻找,比如我的屏的数据手册中的命令如图:
在这里插入图片描述
与我这几个命令相符
15 00 02 36 0A
39 00 03 B3 0A 7F
15 00 02 B4 00
39 00 06 B5 4C 14 14 00 20

这些参数配置完了之后编译烧录屏就能显示了.

遇到问题:
1.背光不能亮
检查硬件电路,或者enable脚是否配置正确.
2.可以显示,但是屏幕花屏
调节rockchip,lane-rate以及timings参数.

### RK3399 MIPI 接口概述 RK3399 芯片集成了多个高速接口,其中包括MIPI DSI (Display Serial Interface) 和 MIPI CSI(Camera Serial Interface),用于连接显示和摄像头模块。这些接口遵循MIPI联盟制定的标准协议,在嵌入式系统设计中广泛应用。 对于MIPI接口的具体配置与使用方法,通常涉及到硬件初始化、时钟设置、数据传输模式的选择等方面的内容[^1]。 ### 配置教程 针对RK3399平台上的MIPI接口配置,可以参考官方提供的Linux内核驱动程序源码中的相关部分来了解具体的实现细节。一般而言,配置过程主要包括以下几个方面: - **加载相应的设备树节点**:通过修改设备树文件(.dts/.dtb), 添加或调整有关mipi dsi/csi的属性描述。 - **编写适配层代码**:根据实际需求定制化开发上层应用程序或者中间件,以便更好地控制底层硬件资源并满足特定应用场景下的性能要求。 - **调试验证工具链**:利用诸如`fbtest`, `disp_test`等测试工具来进行图像显示效果评估;采用`snap`命令抓取视频流帧画面以检验相机工作状态正常与否。 ```bash # 加载MIPIDSI/CAM模块对应的设备树覆盖补丁 sudo dtc -I fs /path/to/mipidsi-cam-overlay.dtb -o /boot/overlays/ echo "dtoverlay=mipidsi-cam" | sudo tee -a /boot/config.txt ``` 上述操作完成后重启系统使更改生效即可完成基本配置流程。 ### 应用实例 关于具体的应用案例,比如如何将一块LCD幕接入到RK3399主板并通过MIPI DSI端口进行通信,则需参照厂给出的技术手册以及配套固件资料实施连线布局规划和技术参数设定等工作。同样地,当涉及摄像头模组对接时,也需要按照CMOS Sensor厂商所提供的指导说明执行相应步骤确保两者之间能稳定可靠地交换信息。 值得注意的是,在某些情况下可能还需要额外安装一些依赖包如mesa-libGLU-devel, libdrm-devl等辅助库文件来增强图形处理能力从而达到更好的视觉呈现质量。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值