sharp_display_lvds --- LVDS点屏模块

################################# 数据位数 #################################

################### 数据位数 ###################
LVDS_18_BIT = 0  # 18 Bit
LVDS_24_BIT = 1  # 24 Bit
LVDS_30_BIT = 2  # 30 Bit

################### pclk锁存边缘 ###################
LVDS_FALLING_EDGE = 0  # 下降沿锁存数据
LVDS_RISING_EDGE = 1  # 上升沿锁存数据

################### 脉冲有效电平 ###################
LVDS_LOW_ACTIVE = 0  # 低电平有效
LVDS_HIGH_ACTIVE = 1  # 高电平有效

################### 显示模式 ###################
LVDS_1Port_Display = 0  # 1port
LVDS_2Port_Display = 1  # 2port
LVDS_3Port_Display = 2  # 3port
LVDS_4Port_Display = 3  # 4port
LVDS_2Port_Split_Display = 4  # 2port  左右分屏
LVDS_3Port_Split_Display = 5  # 3port  三分屏  
LVDS_4Port_Split_Display = 6  # 4port  左右分屏 

################### 数据格式 ###################
LVDS_VESA = 0  # 标准显示
LVDS_JEIDA = 1  # JEIDA格式

################### RGB方向 ###################
LVDS_DIR_RGB = 0  # RGB
LVDS_DIR_BGR = 1  # BGR

################### port顺序 ###################
LVDS_PortDir_Normal  = 0   #port顺序正向
LVDS_PortDir_Opposite = 1  #port顺序反向

################### port组合 ###################
LVDS_PortGroup_Left = 0    #靠左组合port
LVDS_PortGroup_Right = 1   #靠右组合port
class sharp_display_lvds.LVDS

基类:object

√ LVDS信号配置模块类

  • 参数
    • PanelFre:: 屏幕PCLK

    • Pane_str : lvds_panel_par 点屏参数配置类

  • 返回
  • 注意

    使用时需要先实例化方可使用。

  • raise : 无

UserLVDS_SetTiming(class_panel)

在点亮的同时动态的修改参数

  • 参数
    • class_panel: lvds_panel_par 点屏参数配置类

  • 返回
    • 0--NG

    • 1--ok

  • 注意 : 改pclk需要关闭显示才能修改

  • raise : 无

UserLvds_ConfPanelFre(hz, class_panel)

√ 通过屏参数以刷新率为目标,修改par中的pclk参数,使其达到所要的刷新率.

  • 参数
    • hz : 需要的达到的刷新率

    • class_panel : lvds_panel_par 点屏参数配置类

  • 返回 : 无(修改后的结构体以类的形式返回,返回的形式类似C指针形式并不在由return 返回)

  • 注意 : 函数执行后并不是直接生效,只是修改了par中的pclk参数,具体起作用是 UserMipi_SetPanelPar 函数后才生效

  • 所以要在 UserMipi_SetPanelPar 函数之前使用

  • raise : 无

UserLvds_DeInitPanelPar(hz, class_panel)

给par传个默认值,调用会覆盖par的值

*参数
  • hz : 屏幕刷新率

  • class_panel : lvds_panel_par 点屏参数配置类

*返回 : 无

*注意 : 函数出来后,参数不能直接用,要经过修改

  • raise : 无

UserLvds_GetPanelFre(class_panel)

通过屏参数返回现在的刷新率

*参数
  • class_panel: lvds_panel_par 点屏参数配置类

*返回
  • 屏幕刷新频率

  • raise : 无

UserLvds_GetPanelPclk(class_panel, hz)

通过屏前后沿参数与刷新率获取pclk

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

    • hz :屏幕刷新频率

  • 返回
    • 像素时钟 单位Mhz

  • raise : 无

UserLvds_OFF()

关闭LvdS信号

  • 参数

  • index: 使能的板子 不传则默认为全选

  • 返回
    • 看 EnumUserReturn 枚举

  • raise : 无

UserLvds_ON()

开启Lvds信号

  • 参数
    • index : 使能的板子 不传则默认为全选

  • 返回 : 看 EnumUserReturn 枚举

  • raise : 无

UserLvds_PclkGetPanelFre(class_panel, pclk)

通过屏前后沿参数与现传进去的pclk计算返回刷新率

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

    • pclk : pclk 像素时钟 单位Mhz

  • 返回 : 屏幕刷新频率

  • raise : 无

UserLvds_SetPanelPar(class_panel)

√ 点屏参数配置初始化函数

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

  • 返回
    • >=0: 点屏参数配置初始化成功

    • <0: 点屏参数配置初始化失败

  • raise : 无

sharp_display_lvds.SHARP_Display_Lvds_Init(PCLK, Pane_str)

LVDS屏幕参数设置

  • 参数
    • PCLK : 屏幕PCLK

    • Pane_str : lvds_panel_par 点屏参数配置类

  • 返回 : 无

  • raise : 无

sharp_display_lvds.SHARP_UserLVDS_SetTiming(class_panel)

在点亮的同时动态的修改参数

  • 参数
    • class_panel: lvds_panel_par 点屏参数配置类

  • 返回
    • 0--NG

    • 1--ok

  • 注意 : 改pclk需要关闭显示才能修改

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_ConfPanelFre(hz, class_panel)

√ 通过屏参数以刷新率为目标,修改par中的pclk参数,使其达到所要的刷新率.

  • 参数
    • hz : 需要的达到的刷新率

    • class_panel : lvds_panel_par 点屏参数配置类

  • 返回 : 无(修改后的结构体以类的形式返回,返回的形式类似C指针形式并不在由return 返回)

  • 注意 : 函数执行后并不是直接生效,只是修改了par中的pclk参数,具体起作用是 UserMipi_SetPanelPar 函数后才生效

  • 所以要在 UserMipi_SetPanelPar 函数之前使用

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_DeInitPanelPar(hz, class_panel)

给par传个默认值,调用会覆盖par的值

*参数
  • hz : 屏幕刷新率

  • class_panel : lvds_panel_par 点屏参数配置类

*返回 : 无

*注意 : 函数出来后,参数不能直接用,要经过修改

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_GetPanelFre(class_panel)

通过屏参数返回现在的刷新率

*参数
  • class_panel: lvds_panel_par 点屏参数配置类

*返回
  • 屏幕刷新频率

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_GetPanelPclk(class_panel, hz)

通过屏前后沿参数与刷新率获取pclk

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

    • hz :屏幕刷新频率

  • 返回
    • 像素时钟 单位Mhz

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_Init()

LVDS信号初始化

  • 参数 : 无

  • 返回
    • 0:表示硬件ok

  • 注意 : 用户不需要调用

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_OFF(index=None)

关闭LvdS信号

  • 参数

  • index: 使能的板子 不传则默认为全选

  • 返回
    • 看 EnumUserReturn 枚举

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_ON(index=None)

开启Lvds信号

  • 参数
    • index : 使能的板子 不传则默认为全选

  • 返回 : 看 EnumUserReturn 枚举

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_PclkGetPanelFre(class_panel, pclk)

通过屏前后沿参数与现传进去的pclk计算返回刷新率

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

    • pclk : pclk 像素时钟 单位Mhz

  • 返回 : 屏幕刷新频率

  • raise : 无

sharp_display_lvds.SHARP_UserLvds_SetPanelPar(class_panel)

√ 点屏参数配置初始化函数

  • 参数
    • class_panel : lvds_panel_par 点屏参数配置类

  • 返回
    • >=0: 点屏参数配置初始化成功

    • <0: 点屏参数配置初始化失败

  • raise : 无

class sharp_display_lvds.lvds_panel_par

基类:object

LVDS点屏参数配置类

Pack_Data()

打包数据流

UnPack_Data(byte)

解析数据流

autoPanelFre = 0

刷新率

bit_mode()

数据位数

dat_format()

数据格式

de_active_edge()

de脉冲有效电平

display_mode()

显示模式

h_active()

水平同步信号的的有效像素

h_active_edge()

水平同步信号的有效电平

h_back_porch()

水平同步信号的后沿

h_front_porch()

水平同步信号的前沿

h_pulse_width()

水平同步信号的脉冲宽度

pclk()

屏幕pclk时钟 单位:Mhz,支持小数

pclk_edge()

pclk锁存边缘

port_dir()

port顺序

port_group()

port组合

rgb_dir()

RGB方向

v_active()

垂直同步信号的有效像素

v_active_edge()

垂直同步信号的有效电平

v_back_porch()

垂直同步信号的后沿

v_front_porch()

垂直同步信号的前沿

v_pulse_width()

垂直同步信号的脉冲宽度