《了解MIPI-DSI》

日期:2015.01.14

一、开篇说明
        这几天都在调试MTK平台下的LCD屏,它们都是采用MIPI接口方式去连接的。而我在修改它们的驱动时,注意到有时候它们需要设置一些上肩、下肩、左肩、右肩等等的东西,但有时候又不需要去设置这些东西。由于刚开始接触这一方面的东西,不是十分清楚。
        以前用到的都是需要设置上下肩的,现在遇到有些不需要设置,就觉得很奇怪。这个时候就需要去看个究竟了。
二、查阅相关资料得到以下信息
    1,LCD屏的接口一般有三种:DBI、DPI及DSI。
        DBI:也就是通常所讲的MCU接口,俗称80 system接口。DBI接口又分为串行和并行两种,模型如下:

2,DPI接口
               也就是通常所说的RGB接口,采用普通的同步、时钟、信号线来传输特定数据,采用SPI等控制线完成命令控制。某种程度上,DPI与DBI的最大差别是,
        DPI的数据线和控制线分离,而DBI是复用的。

 

 

 

3,DSI接口

        DSI,是一种串行传输方式,包括数据、指令、其他信息。连接方式如下图:

 

由于DSI的数据是封包处理的,不像DBI接口那样可以明显知道原始的传输内容,所以在一些问题的解决方法是不同的。

        1) DSI的线路构成:在DSI中需要 1 根时钟线以及 1 ~ 4根数据线。

        2) DSI 有两种接口的LCD

            第一种:Comman mode(对应 MPU 接口)

            第二种:Video mode(对应RGB接口)

 

 

三、解惑
            我去比对了一下要设置上、下肩的LCD驱动和不需要设置上下肩的驱动代码。发现了如果是DSI的模式为Comman mode 接口的话,就不用设置
        那些上下肩的东西,如果是用了DSI的 Video mode 的话,就需要去设置上、下肩的时序。
        例1:
        params->dsi.mode   = SYNC_PULSE_VDO_MODE;
        params->dsi.vertical_sync_active = 3;

        params->dsi.vertical_backporch = 12;
        params->dsi.vertical_frontporch = 2;
        params->dsi.vertical_active_line = FRAME_HEIGHT; 

        params->dsi.horizontal_sync_active = 10;
        params->dsi.horizontal_backporch = 50;
        params->dsi.horizontal_frontporch = 50;

        params->dsi.horizontal_active_pixel = FRAME_WIDTH;
        params->dsi.PLL_CLOCK                                   = 116; //dsi clock customization: should         config clock value directly
        例2:
        params->dsi.mode  = CMD_MODE;
        params->dsi.pll_div1                                            =1;  // div1=0,1,2,3;div1_real=1,2,4,4
        params->dsi.pll_div2                                            =0;  // div2=0,1,2,3;div2_real=1,2,4,4
        params->dsi.fbk_div                                            =17;    // fref=26MHz, fvco=fref*(fbk_div+1)*2/(div1_real*div2_real)
// if fbk_div = 17; fvco = 432MHz   ==================chen=================

 

 

MIPI video mode 和 command mode 的区别
        DSI(Video Mode)视频模式.
            这种工作模式与传统RGB接口相似,主机需要持续刷新显示器。由于不使用专用的数据信号传输同步信息,控制信号和RGB数据是以报文的形式通过MIPI总线传输的。
        因为主机需要定期刷新显示器,显示器就不需要帧缓冲器。这才MX LCD不需要RAM的关键原因。
        DCS(Command mode)命令模式
            MIPI总线控制器使用显示命令报文来向显示器发送像素数据流。显示器应该有一个全帧长的帧缓冲器来存储所有的像素数据。一旦数据被放在显示器的帧缓冲器中,
        定时控制器就从帧缓冲器中取出数据,并自动把它们显示在屏幕上。MIPI总线控制器不需要定期刷新显示器。

 

 

 

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值