SSD2828是一款RGB转MIPI的桥接芯片,最高4通道 MIPI 4 Line信号可支持分辨率最高达2560*1600@30Hz,1920@1200@60Hz的RGB 24 Bit 图像信号。SSD2828芯片的通讯接口是SPI,需要注意的是SPI的格式有3种,用户可根据需求自行选择。我们常用3 Wire的SPI。

SSD2828 RGB接口和MIPI接口的位数是一起设置的(通过B6寄存器设置),即没有RGB为24bit,MIPI为16bit的这种情况. 使用的时候注意以下信息
1. SSD2828可支持的16,18,24bit的屏,而有的屏不支持16bit的,如小米3的屏就不支持,这个要看清楚.
2. 屏的data lane和SSD2828设置的要一致
3. SSD2828的VBP, VFP, HBP, HFP,和CPU这端设置不能一致,显示不正常,我也不知道为什么.
驱动初始化包括SSD2828,LCD屏的初始化
4. SSD2828初始化主要有设置PLL, 设置LCD参数(分辨率,VBP, VFP, HBP, HFP).
CPU这端的Pclk设置为90~120MHz, SSD2828 PLL output为800MHz左右,900以上有些危险,干扰大(跟PCB有关系咯)
5. SSD2828提供给CPU接口,通过DCS设置LCD的一些参数,这个要看LCD手册有哪些参数要设置,最主要的是0x29,0x11指令,
  让LCD exit sleep mode和display on.
屏不显示可能有几种情况
1. 0x29,0x11指令发送不对,LCD没收到,一直在sleep状态.
2. 屏要显示,data lane上肯定有波型,如果data lane波型都没有,那就是ssd2828都没有配置好,跟CPU这端没有关系.
3. data lane有波型,可能跟C9, CA, CB,这几个寄存器有关,随便设置几个值试一下(最大,最小,中间值),我调试了一周,就是C9没有设置对,所以一直没显示
屏幕抖动可能跟VBP, VFP, HBP, HFP,这几个参数有关,修改SSD2828和CPU LCD controler的这几个参数试一下
颜色过度失真,右能跟B6寄存器中的PCLK_P和0xDB中的CLK_DELAY_SEL有关,我设置PCLK_P为1, CLK_DELAY_SEL为0,显示图片就好了.
不行可修改CLK_DELAY_SEL试一下,再不行我也没办法了.
除了必须设置的参数外,对显示有影响的寄存器主要有:
C9, CA, CB, DB, DD, ED, 调试中主要修改了这些寄存器