Linux LCD屏幕上电不显示

一、问题描述

LCD屏幕点不亮

二、相关配置

timing获取:(1280x800)

最好的获取方式是通过询问LCD屏厂获得确切的时序参考值。其次或是从屏手册或者Driver IC手册中查找(向屏厂索要这些文档)。

至少需要从屏厂获得Width(屏宽),Height(屏高),HBP,HFP,HSW,VBP,VFP,VSW的数值。

在从原厂屏获得的手册中找到以下信息:

由原厂资料得:

Width:1280,Height:800,HBP:88,HFP:72,HSW:4 ,VBP:23,VFP:15,VSW:4

复制代码
lcd_x ---------------------> Width(1280)

lcd_y ---------------------> Height(800)

lcd_hspw ------------------> Hsw(4)

lcd_hbp -------------------> HBP+HSW(88+4=92)

lcd_ht --------------------> Width+HSW+HBP+HFP(1280+4+88+72=1444)

lcd_vspw ------------------> VSW(4)

lcd_vbp -------------------> VBP+VSW(23+4=27)

lcd_vt --------------------> Height+VSW+VBP+VFP(800+4+23+15=842)

lcd_sclk_freq -------------> lcd_ht * lcd_vt * fps,fps一般是60,结果取整,单位是MHz(1444*842*60=72950880=73M)

那么,对board.dts文件中的屏时序相关参数配置如下:

复制代码
--- a/device/config/chips/t527/configs/demo_car/linux-5.15/board.dts
+++ b/device/config/chips/t527/configs/demo_car/linux-5.15/board.dts
 @@ -2685,7 +2685,7 @@ chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 
  lcd_y = <800>;
  lcd_width = <150>; 
  lcd_height = <94>; 
- lcd_dclk_freq = <75>;
+ lcd_dclk_freq = <73>; 
  lcd_pwm_used = <1>; 
  lcd_pwm_ch = <4>; 

@@ -2694,12 +2694,12 @@ chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 
lcd_pwm_max_limit = <255>;
 lcd_pwm_name = "lvds0_backlight"; 
- lcd_hbp = <88>; 
- lcd_ht = <1451>; 
- lcd_hspw = <18>; 
- lcd_vbp = <23>; 
- lcd_vt = <860>; 
- lcd_vspw = <10>;
+ lcd_hbp = <92>;
+ lcd_ht = <1444>; 
+ lcd_hspw = <4>; 
+ lcd_vbp = <27>;
+ lcd_vt = <842>; 
+ lcd_vspw = <4>; 
lcd_lvds_if = <0>; 
lcd_lvds_colordepth = <0>;

查看显示信息:cat /sys/class/disp/disp/attr/sys

三、具体原因

屏幕背光未使能,第一版LCD屏幕背光由MCU控制,未使用T527去控制,所以目前采用硬件上拉的方式,下一版更改为SOC控制

四、解决方法

1、将PI2-PP3V3-GPIO断开,J72 pin3串接10K电阻飞线接到PP5V0_LCD_DUT上

2、焊接R3403电阻,硬件上拉

软件(MCU):

PTC16脚控制,软件上进行拉高

相关推荐
神秘奇男子9 小时前
openEuler 25.09 企业级 MySQL主从复制部署与性能优化实战提升50%
linux·mysql
moringlightyn10 小时前
进程控制(程序替换+自定义Shell)
linux·服务器·c++·笔记·c·shell·进程
Evan芙10 小时前
用fping编写脚本扫描10.0.0.0/24网段在线主机
linux·运维·网络·excel
小毛驴85010 小时前
nrm test 所有源超时解决办法
linux·服务器·网络
SongYuLong的博客10 小时前
ARM Linux 交叉编译工具链(toolchain)
linux·运维·arm开发
云计算老刘10 小时前
Shell三剑客 : 2. sed 使用手册
linux·运维·服务器
qq_4798754310 小时前
Linux 网络实验(3)
linux·运维·网络
誰能久伴不乏10 小时前
为什么 TCP 服务端重启会出现 “Address already in use”问题解析
linux·服务器·c语言·网络·c++·tcp/ip
last demo10 小时前
grep和sed
linux·运维·前端·chrome
VekiSon10 小时前
gdb工具介绍
linux·c语言