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
Bases:
object√ LVDS信号配置模块类
- 参数
PanelFre:: 屏幕PCLK
Pane_str : lvds_panel_par 点屏参数配置类
- 返回
- 注意
使用时需要先实例化方可使用。
raise : 无
- ALL_En_Flag = 1
- LVDS_18_BIT = 0
- LVDS_1Port_Display = 0
- LVDS_24_BIT = 1
- LVDS_2Port_Display = 1
- LVDS_2Port_Split_Display = 4
- LVDS_30_BIT = 2
- LVDS_3Port_Display = 2
- LVDS_3Port_Split_Display = 5
- LVDS_4Port_Display = 3
- LVDS_4Port_Split_Display = 6
- LVDS_DIR_BGR = 1
- LVDS_DIR_RGB = 0
- LVDS_EN = 0
- LVDS_FALLING_EDGE = 0
- LVDS_HIGH_ACTIVE = 1
- LVDS_JEIDA = 1
- LVDS_LOW_ACTIVE = 0
- LVDS_PortDir_Normal = 0
- LVDS_PortDir_Opposite = 1
- LVDS_PortGroup_Left = 0
- LVDS_PortGroup_Right = 1
- LVDS_RISING_EDGE = 1
- LVDS_VESA = 0
- 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)
通过屏参数返回现在的刷新率
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 : 无
- panel_object = None
- 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)
通过屏参数返回现在的刷新率
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
Bases:
objectLVDS点屏参数配置类
- 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()
垂直同步信号的脉冲宽度