sharp_display_mipi --- MIPI 点屏模块
################### 数据位数 ###################
MiPi_18_BIT = 0 # 18 Bit
MiPi_24_BIT = 1 # 24 Bit
MiPi_30_BIT = 2 # 30 Bit
################### pclk锁存边缘 ###################
MiPi_FALLING_EDGE = 0 # 下降沿锁存数据
MiPi_RISING_EDGE = 1 # 上升沿锁存数据
################### 脉冲有效电平 ###################
MiPi_LOW_ACTIVE = 0 # 低电平有效
MiPi_HIGH_ACTIVE = 1 # 高电平有效
################### 突发还是非突发 ###################
NONBURST_SYNC_PULSES = 0 # 非突发模式 sync pulses
NONBURST_SYNC_EVENTS = 1 # 非突发模式 sync events
BURST_MODE = 2 # 突发模式
################### 模式选择 ###################
VIDEO = 0 # Video模式
COMMAND = 1 # Command模式
V2C = 2 # V2C模式
################### D_PHY C_PHY LANE数选择 ###################
D_PHY_1LANE = 0x11
D_PHY_2LANE = 0x12
D_PHY_3LANE = 0x13
D_PHY_4LANE = 0x14
D_PHY_8LANE = 0x18
C_PHY_1LANE = 0x21
C_PHY_2LANE = 0x22
C_PHY_3LANE = 0x23
C_PHY_6LANE = 0x26
################### AB端口选择 ###################
AB_Port = 0
BA_Port = 1
################### 字体尺寸参数宏定义 ###################
FONT0816 = 0x01 # size: w = 8, h = 16
FONT1632 = 0x02 # size: w = 16, h = 32
FONT2448 = 0x03 # size: w = 24, h = 48
FONT3264 = 0x04 # size: w = 32, h = 64
FONT4080 = 0x05 # size: w = 40, h = 80
FONT4896 = 0x06 # size: w = 48, h = 96
################### 色彩宏定义 ###################
NOCOLOR = 0x1000000 # 无色
RED = 0xFF0000
GREEN = 0x00FF00
BLUE = 0x0000FF
WHITE = 0xFFFFFF
BLACK = 0x000000
- sharp_display_mipi.SHARP_Display_Mipi_Init(PCLK, Pane_str)
√ MIPI屏幕参数设置
- 参数
PCLK : pclk 像素时钟 单位Mhz
Pane_str: mipi_panel_par 点屏参数配置类
返回 : 无(修改后的结构体以类的形式返回,返回的形式类似C指针形式并不在由return 返回)
注意 : 函数执行后并不是直接生效,只是修改了par中的pclk参数,具体起作用是 UserMipi_SetPanelPar 函数后才生效
所以要在 UserMipi_SetPanelPar 函数之前使用
raise : 无
- sharp_display_mipi.SHARP_MIPI_WR(mp_tuple)
整合了 DT = 0x39 0x29 0x05 0x15 0x03 0x13 0x23 的MIPI写操作
- 参数
mp_tuple: 元组,不定长数据,格式: mipi_data = ((0x29,0x11),(0x29,0x29))
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_Command_HS()
在cmd模式下进hs
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_Command_LP()
cmd模式下进lp
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_DcsLongWrite(len)
DT = 0X39的写操作设置
- 参数
len: n 写的字节数
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_DcsReadDT06(reg, len)
读操作 DT = 0x06
- 参数
reg: LCM 驱动IC寄存器地址
len: 读的长度,单位Byte
- 返回
读出的数据列表
-1 读失敗 其他 读成功
raise : 无
- sharp_display_mipi.SHARP_SSD28_DcsShortWrite(len)
DT = 0x05, 0x15的写操作设置
- 参数
len: n 写的字节数
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_DispArea(xs, ys, xe, ye)
开窗
- 参数
xs: X轴起始坐标
ys: Y轴起始坐标
xe: X轴结束坐标
ye: Y轴结束坐标
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_DisplayFrame(len)
切换页面
- 参数
len: 选择画面
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_EnterConfigMode()
进入对应的模式
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_GenericLongWrite(len)
DT = 0x29的写操作设置
- 参数
len: n - 写的字节数
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_GenericReadDT14(reg, len)
读操作 DT=0X14
- 参数
reg : - LCM 驱动IC寄存器地址
len : - 讀的长度 单位Byte
- 返回
读出的数据列表
-1 读失敗
其他 读成功
raise : 无
- sharp_display_mipi.SHARP_SSD28_GenericShortWrite(len)
DT = 0x03, 0x13, 0x23的写操作设置
- 参数
len: n 写的字节数
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_LP()
配置成LP模式
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_PLL_ONOFF(on)
开启关闭PLL,休眠的进入与退出用
- 参数
on : =1:开启 ,=0:关闭
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_SelectRead(tx)
选择读的端口
- 参数
tx: 1:选择 MIPI_TX_A , 2:选择 MIPI_TX_B
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_SelectWrite(tx)
选择写的端口
- 参数
tx: =1:选择 MIPI_TX_A , =2:选择 MIPI_TX_B , =3:选择 MIPI_TX_A 和 MIPI_TX_B
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_Set_OE(dat)
选择SSD28芯片(无效 不调用)
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_V2C_Disable()
失能 V2C * 参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_V2C_Enable()
激活 V2C
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_Video()
配置成Video模式
参数 : 无
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_SSD28_WriteData(date)
发送一个MIPI数据,发MIPI初始化用
- 参数
dat: 要写的数据
返回 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_ConfPanelFre(hz, class_panel)
√ 通过屏参数以刷新率为目标,修改par中的pclk参数,使其达到所要的刷新率.
- 参数
hz : 屏幕刷新频率
par: mipi_panel_par 点屏参数配置类
返回 : 无(修改后的结构体以类的形式返回,返回的形式类似C指针形式并不在由return 返回)
注意 : 函数执行后并不是直接生效,只是修改了par中的pclk参数,具体起作用是 UserMipi_SetPanelPar 函数后才生效
所以要在 UserMipi_SetPanelPar 函数之前使用
raise : 无
- sharp_display_mipi.SHARP_UserMipi_GetPanelFre(class_panel)
√ 通过屏参数返回现在的刷新率
- 参数
class_panel: mipi_panel_par 点屏参数配置类
- 返回
屏幕刷新频率
*注意 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_GetPanelHS_Mbps(class_panel)
√ 通过屏的位数,频率和Lane数计算所需要的HS
- 参数
class_panel: mipi_panel_par 点屏参数配置类
- 返回
HS速率 单位Mbps
*注意 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_GetPanelPclk(class_panel, hz)
√ 通过屏前后沿参数与刷新率获取pclk
- 参数
class_panel: mipi_panel_par 点屏参数配置类
hz: 屏幕刷新频率
- 返回
像素时钟 单位Mhz
*注意 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_Init()
Mipi 信号基本初始化
参数 : 无
- 返回
0:表示硬件ok
raise : 无
- sharp_display_mipi.SHARP_UserMipi_OFF(index=None)
关闭MIPI 信号
- 参数
index:使能的板子 不传默认为全选
- 返回
看 EnumUserReturn 枚举
注意 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_ON(index=None)
开启mipi 信号
- 参数
index:使能的板子 不传默认为全选
- 返回
看 EnumUserReturn 枚举
注意 : 这里出来是LP11模式
raise : 无
- sharp_display_mipi.SHARP_UserMipi_PclkGetPanelFre(class_panel, pclk)
√ 通过屏前后沿参数与现传进去的pclk计算返回刷新率
- 参数
class_panel : mipi_panel_par 点屏参数配置类
*pclk : 像素时钟 单位Mhz
- 返回
屏幕刷新频率
*注意 : 无
raise : 无
- sharp_display_mipi.SHARP_UserMipi_SetPanelPar(class_panel)
√ 点屏参数配置初始化函数
- 参数
class_panel: mipi_panel_par 点屏参数配置类
- 返回
>=0: 点屏参数配置初始化成功
<0: 点屏参数配置初始化失败
raise : 无
- sharp_display_mipi.SHARP_UserMipi_SetTiming(class_panel)
在点亮的同时动态的修改前后沿参数
- 参数
class_panel: mipi_panel_par 点屏参数配置类
返回 : 无
注意 : 改pclk需要关闭显示才能修改
raise : 无
- class sharp_display_mipi.StrSSD_Window
基类:
object开窗模式配置的类对象 ,已经嵌套到 点屏参数配置的类对象里
- Command_x_end()
X轴结束坐标
- Command_x_start()
X轴开始坐标
- Command_y_end()
Y轴结束坐标
- Command_y_start()
Y轴开始坐标
- class sharp_display_mipi.mipi_panel_par
基类:
object点屏参数配置类
- Burst()
突发还是非突发
- Burst_AllLP()
突发模式下空闲进LP使能
- CmdOrVideo()
数据包传输模式(Video or command)
- Cmd_PacketSizeMode()
数据包大小模式
- HS_Mbps()
High speed 传输速率
- LP_Mbps()
LOW Power 传输速率
- PortDir()
Port 口(A口 or B口)
- TypeLane()
DPHY或者CPHY类型 与 Lane数
- autoPanelFre = 0
屏幕刷新率
- bit_mode()
数据位数
- de_active_edge()
de脉冲有效电平
- h_active()
水平同步信号的的有效像素
- h_active_edge()
水平同步信号的有效电平
- h_back_porch()
水平同步信号的后沿
- h_front_porch()
水平同步信号的前沿
- h_pulse_width()
水平同步信号的脉冲宽度
- pclk()
屏幕pclk时钟 单位:Mhz,支持小数
- pclk_edge()
pclk锁存边缘
- v_active()
垂直同步信号的有效像素
- v_active_edge()
垂直同步信号的有效电平
- v_back_porch()
垂直同步信号的后沿
- v_front_porch()
垂直同步信号的前沿
- v_pulse_width()
垂直同步信号的脉冲宽度