屏幕驱动
2.1、设备树参数说明
2.1.1、显示配置结构框图
#mermaid-svg-ZtO6uuboUQbxxgGo{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-ZtO6uuboUQbxxgGo .error-icon{fill:#552222;}#mermaid-svg-ZtO6uuboUQbxxgGo .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ZtO6uuboUQbxxgGo .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ZtO6uuboUQbxxgGo .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ZtO6uuboUQbxxgGo .marker.cross{stroke:#333333;}#mermaid-svg-ZtO6uuboUQbxxgGo svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ZtO6uuboUQbxxgGo p{margin:0;}#mermaid-svg-ZtO6uuboUQbxxgGo .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster-label text{fill:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster-label span{color:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster-label span p{background-color:transparent;}#mermaid-svg-ZtO6uuboUQbxxgGo .label text,#mermaid-svg-ZtO6uuboUQbxxgGo span{fill:#333;color:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo .node rect,#mermaid-svg-ZtO6uuboUQbxxgGo .node circle,#mermaid-svg-ZtO6uuboUQbxxgGo .node ellipse,#mermaid-svg-ZtO6uuboUQbxxgGo .node polygon,#mermaid-svg-ZtO6uuboUQbxxgGo .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ZtO6uuboUQbxxgGo .rough-node .label text,#mermaid-svg-ZtO6uuboUQbxxgGo .node .label text,#mermaid-svg-ZtO6uuboUQbxxgGo .image-shape .label,#mermaid-svg-ZtO6uuboUQbxxgGo .icon-shape .label{text-anchor:middle;}#mermaid-svg-ZtO6uuboUQbxxgGo .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-ZtO6uuboUQbxxgGo .rough-node .label,#mermaid-svg-ZtO6uuboUQbxxgGo .node .label,#mermaid-svg-ZtO6uuboUQbxxgGo .image-shape .label,#mermaid-svg-ZtO6uuboUQbxxgGo .icon-shape .label{text-align:center;}#mermaid-svg-ZtO6uuboUQbxxgGo .node.clickable{cursor:pointer;}#mermaid-svg-ZtO6uuboUQbxxgGo .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-ZtO6uuboUQbxxgGo .arrowheadPath{fill:#333333;}#mermaid-svg-ZtO6uuboUQbxxgGo .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ZtO6uuboUQbxxgGo .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ZtO6uuboUQbxxgGo .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZtO6uuboUQbxxgGo .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-ZtO6uuboUQbxxgGo .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZtO6uuboUQbxxgGo .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster text{fill:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo .cluster span{color:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ZtO6uuboUQbxxgGo .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-ZtO6uuboUQbxxgGo rect.text{fill:none;stroke-width:0;}#mermaid-svg-ZtO6uuboUQbxxgGo .icon-shape,#mermaid-svg-ZtO6uuboUQbxxgGo .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-ZtO6uuboUQbxxgGo .icon-shape p,#mermaid-svg-ZtO6uuboUQbxxgGo .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-ZtO6uuboUQbxxgGo .icon-shape .label rect,#mermaid-svg-ZtO6uuboUQbxxgGo .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-ZtO6uuboUQbxxgGo .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-ZtO6uuboUQbxxgGo .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-ZtO6uuboUQbxxgGo :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} Power Rails --- 电源供给
dc1sw-supply
LCD电源(VCC-LCD)
bldo1-supply
HDMI/LVDS电源(VCC-LVDS)
cldo4-supply
TV输出电源(VCC-TV)
接口定义 --- CPU / DSI
lcd_cpu_if
接口数据位宽/时序模式
0:18bit(1cycle),4:16bit(1cycle)
6:18bit(3cycle),7:16bit(2cycle)
lcd_cpu_te
TE触发方式
0:auto,1:rising,2:falling
lcd_dsi_if
DSI接口类型
0:video,1:command,2:burst
lcd_dsi_te
DSI TE触发方式
0:auto,1:rising,2:falling
lcd0@01c0c000 --- LCD 面板控制器
lcd_used = 1
启用LCD输出
lcd_if = 0(HV并行RGB)
LCD接口类型
lcd_dclk_freq = 33MHz
像素时钟频率
lcd_x=800, lcd_y=480
分辨率
hbp=46, ht=1056, hspw=30
vbp=23, vt=525, vspw=13
行场同步时序
lcd_pwm_used = 1
启用PWM调光
lcd_pwm_ch = 0
PWM通道编号
lcd_pwm_freq = 50000
PWM频率(Hz)
lcd_pwm_pol = 1
PWM极性(1=正逻辑)
lcd_pwm_max_limit = 255
最大亮度限制
lcd_lvds_if = 0
LVDS接口组编号
lcd_lvds_mode = 0
LVDS工作模式(单通道)
lcd_frm = 0
帧率控制功能开关
lcd_gamma_en = 0
Gamma校正开关
lcd_bright_curve_en = 0
亮度曲线校正
lcd_cmap_en = 0
颜色映射表使能
lcd_fsync_en = 0
帧同步信号输出
lcd_fsync_act_time = 1000
同步信号有效周期
lcd_fsync_dis_time = 1000
同步信号无效周期
deu_mode = 0
图像增强单元模式
lcdgamma4iep = 22
内部Gamma表索引
smart_color = 90
智能色彩增强强度
hdmi@06000000 --- HDMI 输出控制器
hdmi_used = 1
启用 HDMI 模块
hdmi_mode_check = 1
读取EDID检测屏幕支持模式
hdmi_hdcp_enable = 1
启用HDCP加密
hdmi_cec_support = 1
启用CEC设备互控
hdmi_power0 = bldo1
HDMI供电电源通道
format = 0(RGB)
bits=8bit
色彩编码格式与位宽
eotf = 4(SDR)
电光转换函数类型
cs = 257(BT.709)
色彩空间标准
range = 2(Limited)
视频电平范围(16-235)
aspect = 8(Follow content)
宽高比处理方式
boot_gui --- 启动画面输出
def_output_dev = 0
默认输出设备
dev0_output_type = 3 (HDMI)
dev0_output_mode = 10 (1080p60)
主屏输出配置
dev1_output_type = 1 (LCD)
dev1_output_mode = 4 (720p)
副屏输出配置
disp@01000000 --- 显示管理模块
disp_init_enable = 1
启用显示子系统初始化
disp_mode = 0
绑定关系: screen0↔fb0
disp_para_zone = 1
参数区域选择(多配置方案)
fb0 = 1920x1080
FrameBuffer0分辨率
fb1 = 800x480
FrameBuffer1分辨率
chn_cfg_mode = 1
显示通道配置模式(4ch+2ch)
结构逻辑理解总结
| 模块 | 参数类型 | 功能类别 |
|---|---|---|
DISP |
系统显示初始化、屏幕绑定、通道数 | 顶层显示管理 |
BOOT |
U-Boot 阶段的屏幕输出选择 |
开机显示 |
HDMI |
色彩格式、EDID、CEC、HDCP、电源、模式检测 |
数字视频输出 |
LCD0 |
分辨率、时序、接口类型、PWM调光、色彩调整、同步信号 | 模拟并行输出 |
IFACE |
CPU/DSI 物理接口定义 |
面板通信协议 |
POWER |
电源依赖关系 | 硬件供电管理 |
2.1.2、参数配置详细说明
-
BootGUI(U-Boot)相关 ---devX_*、def_output_dev参数 当前值 含义 备注 建议 dev0_output_type<3>BootGUI第0设备类型0:none,1:lcd,2:tv,4:hdmi(这里为3,应以BSP版本定义为准)若要改开机默认设备才调整 dev0_output_mode<10>BootGUI第0设备模式编号模式编号按 include/video/sunxi_display2.h定义(U-Boot专用)不常改 dev0_screen_id<0>绑定到哪个 screen 0 -> screen0不常改 dev0_do_hpd<1>BootGUI是否检测HPD1 = 检测热插拔 保持 1 可在开机阶段识别外接显示 dev1_output_type<1>BootGUI第1设备类型见类型表 同上 dev1_output_mode<4>BootGUI第1设备模式U-Boot模式编号同上 dev1_screen_id<1>绑定到哪个 screen1 -> screen1同上 dev1_do_hpd<1>BootGUI是否检测HPD(对HDMI有用)同上 同上 def_output_dev<0>BootGUI默认输出设备索引默认显示设备( dev0)改动会改变开机 Logo显示位置 -
disp(顶层显示管理)总体参数 当前值 含义 备注 建议 disp_init_enable<1>启动时初始化显示系统 必要 不建议改 disp_mode<0>路由模式 0 = screen0↔fb0(单屏默认)不建议改(除非理解路由) disp_para_zone<1>参数区域标记 BSP内部用途不建议改 chn_cfg_mode<1>DE (Display Engine)通道分配0:single6ch; 1:dual 4+2; 2:dual 3+3根据多层/多屏需求选,慎改 hdmi_mode_check<1>HDMI时是否校验sink(EDID)1=严格 CTS(读取EDID),0=强制模式调试自定义分辨率可临时设 0;平时建议 1 -
Screen (screen0 / screen1)--- 输出类型与信号属性-
Screen0参数 当前值 含义 备注 建议 screen0_output_type<3>输出接口类型 0:none;1:lcd;2:tv;3:hdmi;5:vdpo与硬件拓扑对应 screen0_output_mode<10>输出模式编号 对 HDMI为CEA/VIC或BSP特定编号(69 表示1920×1080@60)若要自定义分辨率需用 cmdline/EDID/驱动扩展screen0_output_format<0>输出像素编码 0:RGB;1:YUV444;2:YUV422;3:YUV420RGB兼容性最好screen0_output_bits<0>位深 0:8bit;1:10bit;2:12bit保持 8bit常用screen0_output_eotf<4>EOTF(电光函数)4:SDR;16:HDR10;18:HLGSDR常用screen0_output_cs<257>色度/色域 257:BT.709;260:BT.601;263:BT.2020与内容/ HDR配合screen0_output_dvi_hdmi<2>DVI/HDMI模式1:dvi,2:hdmiHDMI模式带InfoFrame/音频screen0_output_range<2>量化范围 1:full,2:limitedlimited常用于电视screen0_output_scan<0>扫描声明 0:none,1:overscan,2:underscan一般 0 screen0_output_aspect_ratio<8>宽高比 8:同原图, 9:4:3,10:16:9通常 8 -
Screen1参数 当前值 含义 备注 建议 screen1_output_type<1>输出接口类型 1 = LCD以硬件为准 screen1_output_mode<4>输出模式 对 LCD此字段常为占位LCD用panel timing决定screen1_output_format<0>输出像素编码 RGB见上 screen1_output_bits<0>位深 8bit见上 screen1_output_eotf<4>SDR见上 screen1_output_cs<257>BT.709见上 screen1_output_dvi_hdmi<2>保留字段 对 LCD 无意义 screen1_output_range<2>Limited见上 screen1_output_scan<0>无 见上 screen1_output_aspect_ratio<8>跟随源 见上
-
-
Framebuffer(fb0/fb1)相关参数 当前值 含义 备注 建议 fb0_format<0>FB存储像素格式0 在 BSP下代表ARGB8888(常见) (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444)确认 header定义fb0_width/fb0_height<1920>/<1080>FB尺寸(像素)若为 0 则跟随输出分辨率;此处固定为 1920×1080改动影响显存和缩放 fb1_format<0>同上 FB1常用于第二屏同上 fb1_width/fb1_height<800>/<480>FB1尺寸与 LCD面板800×480对应若改变需确保 buffer足够fbx_pixel_sequence--- 像素通道顺序 0:ARGB 1:BGRA 2:ABGR 3:RGBA确认 CPU/GPU访问顺序fb0_scaler_mode_enable--- 是否启用 FE 缩放 若开, FE会把FB缩放到输出根据性能/效果决定 -
HDMI控制器(hdmi@06000000)参数 当前值 含义 备注 建议 hdmi_used<1>HDMI模块是否启用必需 不改 bldo1-supply<®_bldo1>HDMI电源域供给 PHY& 模块不改 hdmi_power_cnt/hdmi_power0<1>/"bldo1"电源计数与主 rail 名 驱动用来打开电源 不改 hdmi_hdcp_enable<1>HDCP 1.x开关若不需要可关 开着安全性高,但调试时可临时关 hdmi_hdcp22_enable<1>HDCP 2.2开关需 ESM支持,否则会打印警告若无 esm支持可设 0 以清理日志hdmi_cec_support<1>CEC支持允许遥控/连动 保持或按需关 hdmi_cec_super_standby<0>超低功耗下是否保留 CEC视功耗策略 可改 ddc_en_io_ctrl<0>DDC是否走IO-CTRL0 = 走 I2C控制器绑定若 EDID读失败检查pinmux/ddc绑定power_io_ctrl<0>电源是否走 IO-CTRL0 = 不走 通常不改 -
LCD面板节点(lcd0@01c0c000) --- 关键面板/时序/背光-
屏幕
datasheet基本参数设置:参数 当前值 含义 备注 建议 lcd_used<1>面板节点是否启用 必需 不改 lcd_driver_name"default_lcd"面板驱动名 BSP对应驱动不改(除非替换驱动) lcd_backlight<255>背光初始值( 0~255)与 pwm配合按面板亮度调 lcd_x,lcd_y<800>,<480>屏幕分辨率: x水平分辨率:y垂直分辨率必须与物理面板一致 --- lcd_width,lcd_height<152>,<92>屏幕实际尺寸( mm):lcd_width宽度:lcd_height高度必须与物理面板一致 --- lcd_dclk_freq<33>像素时钟( MHz)与 timing一致以保证刷新率调及时注意时序 lcd_hbp,lcd_ht,lcd_hspw<46>,<1056>,<30>H时序参数back porch/total/hsync width用于写入 LCD controllerlcd_vbp,lcd_vt,lcd_vspw<23>,<525>,<13>V时序参数同上 同上 -
背光
PWM设置:参数 当前值 含义 备注 建议 lcd_pwm_used<1>启用 PWM背光控制1=启用,0=禁用。若为0则使用固定电压背光或无背光控制 lcd_pwm_ch<0>PWM通道lcd_pwm_freq<50000>PWM频率(Hz)即每秒 PWM的周期数。一般取20kHz~100kHz,可避免人眼闪烁感lcd_pwm_pol<1>PWM极性0=高电平亮(正逻辑),1=低电平亮(反逻辑)。取决于背光驱动电路 lcd_pwm_max_limit<255>PWM最大值取值:0~255 -
屏幕接口控制、时序、色彩与同步特性
分类 参数 功能说明 接口类型与位宽 lcd_lvds_if,lcd_lvds_colordepth,lcd_lvds_modeLVDS接口配置时序同步信号 lcd_hv_clk_phase,lcd_hv_sync_polarity像素时钟与同步极性 图像增强处理 lcd_frm,lcd_gamma_en,lcd_bright_curve_en,lcd_cmap_en抖动、伽马、亮度、色彩映射 帧同步 lcd_fsync_*多屏同步信号 图像增强扩展 deu_mode,lcdgamma4iep,smart_colorDEU/IEP(图像增强单元)特性-
LVDS接口配置参数 当前值 取值 含义 备注 lcd_lvds_if<0>0: single link 1: dual linkLVDS传输通道数一般分辨率 <1080p用单通道lcd_lvds_colordepth<0>0: 8bit 1: 6bit每通道颜色位宽 对应面板的数据位宽 lcd_lvds_mode<0>0: JEIDA 1: VESALVDS位序标准JEIDA工业标准/VESAPC显示标准: 定义像素bit顺序不同 -
抖动与同步极性
参数 当前值 取值 含义 lcd_frm<0>0:关闭;1:开启 rgb666抖动;2:开启rgb656抖动低位屏幕(如 6bit)可启用抖动提升灰度表现lcd_hv_if--- 0:Parallel RGB; 8:Serial RGB; 10:Dummy RGB; 11: RGB Dummy;12:CCIR656HV接口的传输类型lcd_hv_clk_phase<0>0:0 degree;1:90 degree;2:180 degree;3:270 degreeLCD像素数据时钟相位lcd_hv_sync_polarity<0>0:vs low,hs low; 1:vs high,hslow; 2:vs low,hs high; 3:vs high,hs highHSYNC/VSYNC高低电平极性控制lcd_hv_syuv_seq--- 0:YUYV; 1:YVYU; 2:UYVY; 3:VYUYYUV顺序,如果序列不匹配,会出现颜色错乱(U/V对调或明暗异常)lcd_cpu_if--- 0:18bit/1 cycle parallel(RGB666); 4:16bit/1cycle parallel (RGB565) ; 6:18bit/3 cycle parallel(RGB666); 7:16bit/2cycle parallel (RGB565)CPU接口数据位宽与传输模式lcd_cpu_te--- 0:帧自动触发;1:帧由 te上升沿触发;2:帧由te下降沿触发CPU接口帧同步触发方式lcd_dsi_if--- 0:视频模式;1:命令模式;2:视频突发模式 MIPI DSI传输模式lcd_dsi_te--- 0:帧自动触发;1:帧由 te上升沿触发;2:帧由te下降沿触发MIPI DSI帧同步触发方式💡 理解方式:
- "
1 cycle parallel" 表示每个像素在一个时钟周期内完成传输; - "
2cycle/3cycle" 表示低速接口下分多次传输像素数据; - "
RGB666/RGB565" 表示颜色格式(分别为18bit或16bit色)。
📘 应用场景: - 小屏(
ST7789、ILI9341)常用CPU接口模式; - 不同位宽模式需匹配
LCD驱动芯片。
💡TE(Tearing Effect) 信号用于防止画面撕裂(Tearing): LCD模块会在垂直同步期间发出TE脉冲;- 主控在接收到
TE边沿后再发送新一帧数据; - 这样可实现帧同步刷新,避免撕裂现象。
📘 如果MCU直接写显存(无同步机制),会看到"半帧撕裂";
启用
TE边沿触发可避免此问题。
#mermaid-svg-YFwkmaxIboAkzVdI{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-YFwkmaxIboAkzVdI .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-YFwkmaxIboAkzVdI .error-icon{fill:#552222;}#mermaid-svg-YFwkmaxIboAkzVdI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-YFwkmaxIboAkzVdI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-YFwkmaxIboAkzVdI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-YFwkmaxIboAkzVdI .marker.cross{stroke:#333333;}#mermaid-svg-YFwkmaxIboAkzVdI svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-YFwkmaxIboAkzVdI p{margin:0;}#mermaid-svg-YFwkmaxIboAkzVdI .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-YFwkmaxIboAkzVdI .cluster-label text{fill:#333;}#mermaid-svg-YFwkmaxIboAkzVdI .cluster-label span{color:#333;}#mermaid-svg-YFwkmaxIboAkzVdI .cluster-label span p{background-color:transparent;}#mermaid-svg-YFwkmaxIboAkzVdI .label text,#mermaid-svg-YFwkmaxIboAkzVdI span{fill:#333;color:#333;}#mermaid-svg-YFwkmaxIboAkzVdI .node rect,#mermaid-svg-YFwkmaxIboAkzVdI .node circle,#mermaid-svg-YFwkmaxIboAkzVdI .node ellipse,#mermaid-svg-YFwkmaxIboAkzVdI .node polygon,#mermaid-svg-YFwkmaxIboAkzVdI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-YFwkmaxIboAkzVdI .rough-node .label text,#mermaid-svg-YFwkmaxIboAkzVdI .node .label text,#mermaid-svg-YFwkmaxIboAkzVdI .image-shape .label,#mermaid-svg-YFwkmaxIboAkzVdI .icon-shape .label{text-anchor:middle;}#mermaid-svg-YFwkmaxIboAkzVdI .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-YFwkmaxIboAkzVdI .rough-node .label,#mermaid-svg-YFwkmaxIboAkzVdI .node .label,#mermaid-svg-YFwkmaxIboAkzVdI .image-shape .label,#mermaid-svg-YFwkmaxIboAkzVdI .icon-shape .label{text-align:center;}#mermaid-svg-YFwkmaxIboAkzVdI .node.clickable{cursor:pointer;}#mermaid-svg-YFwkmaxIboAkzVdI .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-YFwkmaxIboAkzVdI .arrowheadPath{fill:#333333;}#mermaid-svg-YFwkmaxIboAkzVdI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-YFwkmaxIboAkzVdI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-YFwkmaxIboAkzVdI .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-YFwkmaxIboAkzVdI .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-YFwkmaxIboAkzVdI .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-YFwkmaxIboAkzVdI .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-YFwkmaxIboAkzVdI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-YFwkmaxIboAkzVdI .cluster text{fill:#333;}#mermaid-svg-YFwkmaxIboAkzVdI .cluster span{color:#333;}#mermaid-svg-YFwkmaxIboAkzVdI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-YFwkmaxIboAkzVdI .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-YFwkmaxIboAkzVdI rect.text{fill:none;stroke-width:0;}#mermaid-svg-YFwkmaxIboAkzVdI .icon-shape,#mermaid-svg-YFwkmaxIboAkzVdI .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-YFwkmaxIboAkzVdI .icon-shape p,#mermaid-svg-YFwkmaxIboAkzVdI .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-YFwkmaxIboAkzVdI .icon-shape .label rect,#mermaid-svg-YFwkmaxIboAkzVdI .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-YFwkmaxIboAkzVdI .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-YFwkmaxIboAkzVdI .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-YFwkmaxIboAkzVdI :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} DSI模式
CPU模式
数据总线
MIPI 通道
显示控制器 DE/DI
CPU 接口屏
DSI 接口屏
lcd_cpu_if接口位宽/周期模式
lcd_cpu_te帧同步方式--TE边沿
lcd_dsi_if视频/命令模式
lcd_dsi_te帧同步方式--TE边沿
- "
-
色彩增强部分
参数 当前值 取值 功能说明 lcd_gamma_en<0>0:关 1:开 是否启用伽马曲线校正( Gamma Correction)lcd_bright_curve_en<0>0:关 1:开 是否启用亮度补偿曲线 lcd_cmap_en<0>0:关 1:开 是否启用色彩映射表( Color Map),用于调节色彩空间或进行色彩校正 -
帧同步信号
参数 当前值 含义 说明 lcd_fsync_en<0>是否开启帧同步输出 多屏显示同步时使用(主屏输出 FSYNC信号)lcd_fsync_act_time<1000>FSYNC高电平持续时间(μs)控制信号持续时长 lcd_fsync_dis_time<1000>FSYNC低电平持续时间(μs)控制信号间隔 lcd_fsync_pol<0>0: 低电平有效1: 高电平有效 FSYNC信号极性 -
图像增强单元(
DEU/IEP)参数 当前值 含义 说明 deu_mode<0>图像增强单元模式 0:关闭;1:基础增强;2:动态对比度增强 lcdgamma4iep<22>IEP模块中的Gamma表编号通常为0~255,用于调节 Gamma曲线smart_color<90>智能色彩增强等级 0~100,越大色彩越鲜艳(类似电视"鲜艳模式")
-
-
屏幕亮度/对比度/饱和度/色相
参数 当前值 含义 备注 建议 lcdx_backlight--- 亮度 范围:0,256,默认值:197 --- lcd0_contrast--- 对比度 取值:0~100,默认值:50) --- lcd0_saturation--- 饱和度 取值:0~100,默认值:57 --- lcd0_hue--- 色相 取值:0~100,默认值:50 --- -
帧缓冲区软件旋转设置
参数 当前值 含义 备注 disp_rotation_used--- disp旋转启用0:禁用;1:启用,必须将 fbX_width设置为lcd_ydegreeX--- 旋转度数 X:屏幕索引;0:0°;1:90°;3:270°--- degreeX_Y--- 旋转度数,单独设置图层 X:屏幕索引;Y:图层索引 0~15 ;0:0°;1:90°;3:270°--- -
电源与默认引脚
参数 当前值 含义 备注 建议 pinctrl-0/pinctrl-1<&rgb24_pins_a>/<&rgb24_pins_b>引脚复用组 必须与板级原理图一致 若引脚冲突会导致无信号 lcd_power/lcd_pin_power"dc1sw","bldo1"供电 rail名供电依赖,驱动在上电时使用 不建议随意改
-
-
电源(
supply)绑定参数 当前值 含义 dc1sw-supply<®_sw>LCD电源bldo1-supply<®_bldo1>LVDS/HDMI电源cldo4-supply<®_cldo4>TV电源