当前位置: 首页 > news >正文

20250814在荣品RD-RK3588开发板的Android13下解决卡迪的LCD屏在开机的时候brightness最暗【背光的pwm信号的极性反了】

20250814在荣品RD-RK3588开发板的Android13下解决卡迪的LCD屏在开机的时候brightness最暗【背光的pwm信号的极性反了】
2025/8/14 11:33


缘起:在荣品RD-RK3588开发板的Android13下,卡迪的LCD屏在开机的时候很暗,几乎看不见。
在命令行查看亮度值brightness为255。很容易知道极性反了。


在LCD的DTS中找到背光名:backlight = <&backlight_mipi>;
Z:\Android13.0\kernel-5.10\arch\arm64\boot\dts\rockchip\rk356x\rp-lcd-mipi0-7-1200-1920.dtsi
Z:\RD-RK3588_Android13\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rp-lcd-mipi0-8-1200-1920.dtsi


&dsi0 {
status = "okay";
//rockchip,lane-rate = <480000>;
dsi0_panel: panel@0 {
status = "okay";
compatible = "simple-panel-dsi";
reg = <0>;

        power-supply = <&vcc3v3_lcd_n>;

        //reset-gpios = <&gpio4 RK_PC6 GPIO_ACTIVE_LOW>;
//pinctrl-names = "default";
//pinctrl-0 = <&lcd_rst_gpio>;

        backlight = <&backlight_mipi>;
init-delay-ms = <60>;
reset-delay-ms = <60>;
enable-delay-ms = <60>;
prepare-delay-ms = <60>;
unprepare-delay-ms = <60>;
disable-delay-ms = <60>;
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>;


确认使用的背光backlight_mipi的极性为0,即为正极性。修改为1负极性即可。
Z:\Android13.0\kernel-5.10\arch\arm64\boot\dts\rockchip\rk356x\pro-rk3566-single-lcd-gpio.dtsi
Z:\RD-RK3588_Android13\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rd-rk3588-lcd-gpio.dtsi

Z:\RD-RK3588_Android13\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rd-rk3588-lcd-gpio.dtsi

    backlight_mipi: backlight {
    pwms = <&pwm1 0 25000 0>;
};

修改为:

    backlight_mipi: backlight {
    pwms = <&pwm1 0 25000 1>;
};


百度:RK3588 背光 极性反了 brightness 255 最暗


https://blog.itpub.net/69948385/viewspace-2900028/
[嵌入式linux] rk3568 android11点屏流程

2.2 Backlight
背光常用的有三种情况:
一是 常开。
二是 背光 IC 使能后,输入 PWM 信号调光。
三是 背光 IC 使能后,通过 FB 获得反馈自动进行调光。


设备树里面配置背光。首先根据原理图,我们知道使用的是 pwm5,


pwms = <&pwm5 0 25000 0>; 配置 pwm,使用 pwm5,25000 是周期,pwm 为正极性。
brightness-levels 属性:配置背光亮度数组,一般以值 255 为一个 scale,当 pwm 设置为正
极时,从 0~255 表示背光为正极,占空比从 0%~100%变化,,255~0 为负极性,占空比从
100%~0%变化,当 pwm 设置为负极性时,反之。
default-brightness-level 属性,时开机时默认背光亮度,范围是 0~255


BING:pwms = <&pwm5 0 25000 0>; 配置 pwm,使用 pwm5,25000 是周期,pwm 为正极性。


https://wiki.youyeetoo.cn/zh/YY3568/OUDISP
显示器

https://wiki.youyeetoo.cn/zh/tinker/tinkerR/Linux_PWM
TinkerBoardR PWM背光驱动配置讲解
DTS配置
backlight: backlight {
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 0>;
brightness-levels = <
0  20  20  21  21  22  22  23
23  24  24  25  25  26  26  27
....
>;
default-brightness-level = <200>;
enable-gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
status = "okay";
};
pwms = <pwms = <&pwm0 0 25000 0>;>

第一个参数 表示此背光接在 pwm0 上;
第二个参数 表示 index 为 0,pwm0 下只有 1个 pwm,所以填 0
第三个参数 表示周期为 25000ns,即 频率 为 40k
第四个参数 表示极性,0 正极性,1 负极性 正极性 0 表示 背光为正极 0~255 ,占空比从 0~100% 变化。负极性 1 表示 背光为负极 255~0 ,占空比从 100~0% 变化

default-brightness-level = <50>

表示默认的背光,它存在于开机时候背光初始化,设置下来新的背光这段时间, default-brightness-level = < 200 > 表示为第 200 个元素的背光亮度。
enable-gpios

表示背光的使能脚,根据原理图配置。有的硬件没有这个背光使能脚,那么将这个配置删除,背光驱动通过配置 brightness-levels 数组的第 0 个元素将显示调黑。


参考资料:
https://wiki.lckfb.com/zh-hans/tspi-rk3566/system-usage/android-system-usage.html
【立创·泰山派RK3566开发板】Android系统使用文档


使用ADB命令设置背光echo "0-255" > /sys/class/backlight/backlight/brightness
rk3566_tspi:/ # echo "16" > /sys/class/backlight/backlight/brightness


https://blog.csdn.net/weixin_43244476/article/details/130217892
Rockchip RK3588 MIPI DSI 显示驱动调试记录


百度:泰山派 pwm LCD屏
https://blog.csdn.net/professionalmcu/article/details/147051008
立创·泰山派RK3566开发板调试MIPI LCD


百度:RK3588 brightness 背光 pwm 极性
RK3588 brightness最大值的时候 最暗
MIPI屏 背光亮度反了 pwms = <&pwm1 0 25000 0>;
Banana Pi BPI-W3 ArmSoM-W3之RK3588-MIPI-DSI屏幕调试笔记

https://wiki.t-firefly.com/zh_CN/ROC-RK3588-PC/usage_pwm.html
ROC-RK3588-PC
8. PWM 使用


https://wiki.t-firefly.com/zh_CN/Core-3399-JD4/driver_lcd.html
Core-3399-JD4
LCD使用


https://wiki.t-firefly.com/zh_CN/ROC-RK3399-PC/driver_lcd.html
ROC-RK3399-PC
LCD使用

http://www.dtcms.com/a/331386.html

相关文章:

  • 机器学习核心概念与实践笔记
  • 安卓设备通过USB,连接继电器,再通过继电器开关闸机
  • 前端包管理工具
  • 【FreeRTOS】任务管理:创建与删除任务,任务优先级与阻塞
  • 计算机网络---传输控制协议Transmission Control Protocol(TCP)
  • Redis的 ​​散列(Hash)​​ 和 ​​列表(List)​​ 数据结构操作详解
  • 力扣-64.最小路径和
  • 【AI推理部署教程】使用 vLLM 运行智谱 GLM-4.5V 视觉语言模型推理服务
  • 电商双 11 美妆数据分析总结(补充)
  • 入门概述(面试常问)
  • 中久数创——笔试题
  • Android构建工具版本兼容性对照表
  • Git 中切换到指定 tag
  • 会议系统核心流程详解:创建、加入与消息交互
  • 卫星通信链路预算之七:上行载噪比计算
  • MySQL-dble分库分表方案
  • 【最新版】怎么下载mysqlclient并成功安装?
  • 物化视图优先迁移大表,缩短逻辑迁移时间
  • MySql——binlog和redolog的区别
  • uniapp开发动态添加密码验证
  • Go语言全面解析:从入门到精通
  • C/C++ 指针与内存操作详解——从一级指针到字符串转换函数的完整解析
  • 拒绝“孤岛式”作战,全方位构筑隧道应急通信解决方案
  • Java 学习笔记(基础篇2)
  • 13、C 语言结构体尺寸知识点总结
  • LeetCode 刷题【41. 缺失的第一个正数】
  • 【力扣322】零钱兑换
  • 非容器方式安装Prometheus和Grafana,以及nginx配置访问Grafana
  • GraphRAG查询(Query)流程实现原理分析
  • NetLimiter:精准掌控网络流量,优化网络体验