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使用