使用SSD201连接RGB的屏,检查发现VS/HS信号反向了,屏幕要求HS/VS是低有效,然后抓上来的波形如下图:
修改配置配置文件的如下内容:
///////////////////////////////////////////////
// For TTL Only
///////////////////////////////////////////////
0, //MS_U8 m_ucPanelDCLKDelay; ///< PANEL_DCLK_DELAY
0, //MS_U8 m_bPanelInvDCLK :1; ///< MOD_4A[4], PANEL_INV_DCLK
0, //MS_U8 m_bPanelInvDE :1; ///< MOD_4A[2], PANEL_INV_DE
1, //MS_U8 m_bPanelInvHSync :1; ///< MOD_4A[12], PANEL_INV_HSYNC
1, //MS_U8 m_bPanelInvVSync :1; ///< MOD_4A[3], PANEL_INV_VSYNC
修改后,通过cat mi_panel0节点可以看到打印的InvHSync/InvVSync指有变化,然而实际测量信号还是高有效
设置成1:1:
PanelName:FPGA_800x480_60
--------------------------------------- PANEL Dev0 Info -------------------------------------
LVDS_POL LVDS_CH LINK_TYPE TI_MODE
0 0 TTL 1
SW_ODD SW_EVEN SW_ODD_RB SW_EVEN_RB
0 0 0 0
H_Total V_Total Width Height H_Start V_Start
512 832 480 800 6 6
hbp hspw hfp vbp vspw vfp
2 4 26 2 4 26
DClk FrameRate INV_DCLK INV_DE InvHSync InvVSync
21 0 0 0 1 1
SSC_Enable SSC_Step SSC_Span TI_BIT Format chnswap
enable 25 192 8BIT 8BIT (0,1,2,3,4)
设置成0:0:
PanelName:FPGA_800x480_60
--------------------------------------- PANEL Dev0 Info -------------------------------------
LVDS_POL LVDS_CH LINK_TYPE TI_MODE
0 0 TTL 1
SW_ODD SW_EVEN SW_ODD_RB SW_EVEN_RB
0 0 0 0
H_Total V_Total Width Height H_Start V_Start
512 832 480 800 6 6
hbp hspw hfp vbp vspw vfp
2 4 26 2 4 26
DClk FrameRate INV_DCLK INV_DE InvHSync InvVSync
21 0 0 0 0 0
SSC_Enable SSC_Step SSC_Span TI_BIT Format chnswap
enable 25 192 8BIT 8BIT (0,1,2,3,4)
离线
另外根据资料,可以通过读取bank 1129/ 1130的寄存器来确认,但是没有找到读取的方法,帮忙指点一下,谢谢
屏配置的文件如链接:
FPGA_800x480_60.zip
sstardisp.zip
更新状态,在群友的提示下,使用Sstar System Tool读取寄存器,然而发现多次读取的值一直在变化,整个bank都在变化,是工具的使用方法问题吗?谢谢
最近编辑记录 fogwizard (2023-10-26 09:07:07)
离线
更新状态:
Sstar System Tool运行之前,先在shell运行11111,然后关掉终端,可以读取到稳定的寄存器值,另外也可以在机器上运行riu_r读取,但是极性还是无法调整。
通过寄存器修改展频寄存器,然后打印看到mi_panel0显示的值并不跟着变化,修改H_Total寄存器,mi_panel0的值也不会跟之变化,说明这个驱动并不是实施从寄存器当中读取的,而是drvier里面保存的值:
/config # cat /proc/mi_modules/mi_panel/mi_panel0
PanelName:FPGA_800x480_60
--------------------------------------- PANEL Dev0 Info -------------------------------------
LVDS_POL LVDS_CH LINK_TYPE TI_MODE
0 0 TTL 1
SW_ODD SW_EVEN SW_ODD_RB SW_EVEN_RB
0 0 0 0
H_Total V_Total Width Height H_Start V_Start
512 832 480 800 6 6
hbp hspw hfp vbp vspw vfp
2 4 26 2 4 26
DClk FrameRate INV_DCLK INV_DE InvHSync InvVSync
21 0 0 0 0 0
SSC_Enable SSC_Step SSC_Span TI_BIT Format chnswap
enable 25 192 8BIT 8BIT (0,1,2,3,4)
最近编辑记录 fogwizard (2023-10-26 23:53:55)
离线
目前找不到调整VS/HS极性的寄存器(目前可以仅查到htotal/vtotal/vsync start/vsync end的地址),有芯片手册的小伙伴是否可以帮忙查看一下呢,谢谢
离线
更新状态: 飞线加一个74HC06D反向器,可以工作
离线
你好,我这边用了SSD20下,遇到屏幕有竖纹的问题,就搜到了这里。;) 。
初期感觉像是VS,HS极性反了。 也向comake论坛寻求了下帮助,官方回复,SSD20x芯片的信号输出极性不支持修改。于是也想加反相器来测试。。
但是无意间,我们拆掉了触摸板,发现原来竖纹是触摸板造成的。换成另外一家的触摸板,则无此问题。也就是说,HS,VS极性反了,感觉对屏幕的输出应该没有太大影响。
离线