流程(在内核设备树)
-
首先确认使用的屏幕
这里使用的屏幕:ST7789V + CTC2.8 3SPI_RGB18BIT 需要spi去做初始化。
有些通用并口LCD屏编写设备树的方式又不一样。
-
查看PCB原理图,确认接线。
-
找到背光引脚,先点亮背光。

-
修改背光设备树(GPIO控制背光)
新建
aa_rv1106-lcd.dtsi测试文件。在使用的dts中#include引入,注意不能有panel节点,panel节点会控制背光,如果panel初始化失败,背光就没有效果。-
新增背光节点
#include <dt-bindings/pinctrl/rockchip.h> / { backlight: backlight { status = "okay"; compatible = "gpio-backlight"; gpios = <&gpio1 RK_PB0 GPIO_ACTIVE_HIGH>; default-on; power-supply = <&vcc_3v3>; }; }; -
开启内核支持
CONFIG_BACKLIGHT_GPIO=y -
查看是否有配置
ls /sys/class/backlight #下有 backlight -
控制背光
echo 0 > /sys/class/backlight/backlight/brightness echo 1 > /sys/class/backlight/backlight/brightness
-
-
修改背光设备树(PWM控制背光)
-
新增节点
#include <dt-bindings/pinctrl/rockchip.h> / { backlight: backlight { status = "okay"; compatible = "pwm-backlight"; pwms = <&pwm3 0 25000 1>; brightness-levels = <0 10 30 60 100 150 200 255>; default-brightness-level = <7>; power-supply = <&vcc_3v3>; }; }; /* PWM3_M1 = GPIO1_B0, 用于背光 */ &pwm3 { status = "okay"; pinctrl-names = "active"; pinctrl-0 = <&pwm3m1_pins>; }; -
内核支持
CONFIG_PWM=y #CONFIG_PWM_ROCKCHIP=y #CONFIG_BACKLIGHT_PWM=y
-