RTOS下如何定位TTL屏颜色显示不对的问题?

Comake Online


作者| veahow


本次专题主要讲解RTOS下如何定位TTL屏颜色显示不对的问题,SSD22X/SSD21X RTOS适用。



1. 场景描述


客户在点屏过程中发现UI颜色异常。


2. 实现原理


启动MI DISP与MI PANEL初始化屏幕,通过寄存器打纯色的数据确认线序是否正常再对padmux和config.ini进行调整。


3. 操作方法


验证SDK版本:

rtk_0107_2021-11-19-0933-V010


验证硬件:

SSD222X_QFN128_2L_DDR2_DEMO公板


3.1 引脚复用


通过HW Checklist确定引脚复用符合屏幕规格要求,一般使用riu_r 0x103c 0x6c进行确认,例如:


使用RGB565,即reg_ttl16_mode=2,则该命令应为riu_w 0x103c 0x6c 0x0002,其中config.ini中m_eOutputFormatBitMode应设置为3


使用RGB666,即reg_ttl18_mode=1,则该命令应为riu_w 0x103c 0x6c 0x0010,其中config.ini中m_eOutputFormatBitMode应设置为1


使用RGB888,即reg_ttl24_mode=4,则该命令应为riu_w 0x103c 0x6c 0x0400,其中config.ini中m_eOutputFormatBitMode应设置为2


3.2 MI启动


修改disp_app.c中的disp_app_init()函数,仅保留控屏的相关IO以及MI初始化部分,需要注意必须要调用读取屏参配置的函数。


void disp_app_init()

{

    if(ST_PreReadPANELFile() == MI_SUCCESS)

        LoadConfig(g_PanelIniAddr,g_u32PanelIniSize);


    camdriver_gpio_request(NULL, pnl_rst_ctl);

    camdriver_gpio_request(NULL, pnl_pwr_ctl);

    camdriver_gpio_request(NULL, pnl_bl_ctl);


    camdriver_gpio_direction_output(NULL, pnl_rst_ctl, 1);

    camdriver_gpio_direction_output(NULL, pnl_pwr_ctl, 1);

    camdriver_gpio_direction_output(NULL, pnl_bl_ctl, 1);


    disp_init();

}


3.3 寄存器配置


3.3.1 寄存器说明


 panel颜色显示不对如何定位问题? 的寄存器部分。


3.3.2 关闭CSC


SS-RTOS # riu_r 0x1129 0x30

BANK:0x1129 16bit-offset 0x30

0x0101

SS-RTOS # riu_r 0x1129 0x3c

BANK:0x1129 16bit-offset 0x3C

0x010B


需要将0x30的bit0写0,0x3c的bit0写0,即:


riu_w 0x1129 0x30 0x0100

riu_w 0x1129 0x3c 0x010A


3.3.3 RGB纯色输出


配置颜色

命令

设置全红(R=255,G=0,B=0)

riu_w 0x1129 0x1C 0x80FF; riu_w 0x1129 0x1B 0x0000;

设置全绿(R=0,G=255,B=0)

riu_w 0x1129 0x1C 0x8000; riu_w 0x1129 0x1B 0xFF00;

设置全蓝(R=0,G=0,B=255)

riu_w 0x1129 0x1C 0x8000; riu_w 0x1129 0x1B 0x00FF;


3.4 问题定位


具体问题具体分析,详细屏参说明可参考Linux版的文档:

https://wx.comake.online/doc/doc/SigmaStarDocs-SSD220-SIGMASTAR-202305231821/customer/AIOT/Ikayaki/Development/screenpara_zh.html


以下提供几种常见的问题:


3.4.1 极性反转问题


比如通过3.3设置下来发现,设置全红显示为全蓝,而设置全蓝变成全红,则需要调整config.ini中:


-m_ucPanelSwapChnR = 1;

+m_ucPanelSwapChnR = 3;

m_ucPanelSwapChnG = 2;

-m_ucPanelSwapChnB = 3;

+m_ucPanelSwapChnB = 1;

m_ucPanelSwapRgbML = 1;


3.4.2 数据信号问题


比如通过3.3设置下来,设置全红显示有差异,可能部分引脚信号异常。可能有如下两组情况:


相关引脚被软件复用成其他模式导致功能失效,需要riu_r 0x103c配套HW Checklist检查一下。


外围电路上确实存在问题,需要检查硬件信号。



》》原帖地址


End.



往期回顾


微信刷掌支付搭载SSC9351Q


星宸科技智能门锁方案介绍


SSD222Q在工业HMI中的新应用


星宸科技智能网关方案介绍


星宸科技智能家居全家桶介绍





扫码进入论坛

原厂答疑|产品选型|官方资源



扫码咨询客服

SDK下载|芯片、开发板购买


X 提交 下一题

查看更多