Edit online

LVDS 接口屏

背光亮但显示黑屏

可能原因:

  • 板卡 LVDS 走线未严格遵循等长原则
  • LVDS pinmux 引脚未配置
  • LVDS link 配置错误(如使用 link0 但配置为 link1)
  • LVDS link 内差分通道顺序或极性与原理图不匹配

排查方向:

  1. 核对板卡 LVDS 走线是否严格遵循等长原则

  2. 确认工程的 pinmux 文件已配置 LVDS 引脚

    • LVDS 引脚功能为 func 3
  1. 确认 LVDS link 通道,通过 link mode 指定输出通道:

    Board options  --->
        [*] Using Display Engine (DE)
            Display Parameter  --->
                select Display interface (Display LVDS interface)  --->
                lvds link mode (single link 1)  --->
  2. 核对原理图 link 内接线,确认时钟通道和数据通道的接线及极性

    • 通过 disp_conf.h 修改通道顺序和极性:
    #define AIC_LVDS_LINK0_LANES      LVDS_LANES(LVDS_D3, LVDS_CK, LVDS_D2, LVDS_D1, LVDS_D0)
    #define AIC_LVDS_LINK1_LANES      LVDS_LANES(LVDS_D3, LVDS_CK, LVDS_D2, LVDS_D1, LVDS_D0)
    
    #define AIC_LVDS_LINK0_POL        0b00000
    #define AIC_LVDS_LINK1_POL        0b00000
  3. 根据屏幕规格书调整时序参数,通过 Custom Display Timing 重新配置时序
    Display Panels  --->
        ArtInChip Panel Drivers (ArtInChip simple panel)  --->
        [*] Custom Display Timing
        display timing of simple panel  --->
            (10) pixelclock in MHZ
            (480) hactive
            (272) vactive
            (43) hback-porch
            (8) hfront-porch
            (1) hsync-len
            (12) vback-porch
            (4) vfront-porch
            (10) vsync-len

启动时闪一下然后黑屏

可能原因:
  • LVDS link 内差分通道顺序或极性配置与原理图不匹配

解决方法:

修改 disp_conf.h 文件的宏定义来调整通道顺序和极性:
#define AIC_LVDS_LINK0_LANES      LVDS_LANES(LVDS_D3, LVDS_CK, LVDS_D2, LVDS_D1, LVDS_D0)
#define AIC_LVDS_LINK1_LANES      LVDS_LANES(LVDS_D3, LVDS_CK, LVDS_D2, LVDS_D1, LVDS_D0)

#define AIC_LVDS_LINK0_POL        0b00000
#define AIC_LVDS_LINK1_POL        0b00000

Dual Link 屏幕图像显示模糊

可能原因:

  • LVDS link0 和 link1 输出顺序对调,导致屏幕奇偶行像素对调

解决方法:

  • 对于 simple panel,通过 disp_conf.h 配置对调 link0 和 link1 输出:
    /* lvds link swap enable, swap lvds link0 and link1 */
    #define AIC_LVDS_LINK_SWAP_EN   0
  • 对于新建 panel,在驱动源文件中设置:
    static struct panel_lvds lvds = {
        ...
        .link_swap = 1,
    };

Single Link 屏幕图像花屏

可能原因:

  • LVDS 屏使用的协议与接口设置不匹配
  • LVDS 有 vesa-24 / jeida-24 / jeida-18 三种协议,由屏幕规格书指定

解决方法:

通过 menuconfig 修改 lvds mode 配置:
Board options  --->
    [*] Using Display Engine (DE)
        Display Parameter  --->
            select Display interface (Display LVDS interface)  --->
            lvds mode (vesa-24)  --->

Single Link 屏幕部分颜色显示不对

可能原因:

  • LVDS link 部分差分信号极性反接

解决方法:

  1. 核对原理图和板卡 LVDS link 差分信号接线极性,通过 disp_conf.h 配置 LVDS link 差分信号极性:
    #define AIC_LVDS_LINK0_POL        0b00000
    #define AIC_LVDS_LINK1_POL        0b00000