搜索
bottom↓
回复: 146

SSD2828驱动小米屏调试记录

  [复制链接]

出0入0汤圆

发表于 2014-9-16 17:04:47 | 显示全部楼层 |阅读模式
本帖最后由 Xplain 于 2014-9-16 18:51 编辑

最近用SSD2828驱动小米屏,没有代码,没有技术支持,自己写代码反复调试,整死我了,目前已经能正常显示图片,做个总线跟大家分享一下,说的不对的地方欢迎大家批评指正.
要点:
1. 小米3屏的分辨率是1920*1080, 24bit, 行列像素点为1080*1920, 默认显示方式为从左->右,上->下,这个可以通过DCS指令修改.
2. SSD2828手册上说SSD2828一行最大可显示1920个像素点(60Hz),而官网上说SSD2828的最大分辨率为1920x1200,所以我一直认为SSD2828
   行像素最大可设置为1920,列最大像素可设置为1200,实际上驱动小米3屏时,行列分别设置为1080*1920.         
3. 要用SSD2828最新的手册,目前能找到的是V1.3,旧版本有些地方是错的,误导人.
4. SSD2828 RGB接口和MIPI接口的位数是一起设置的(通过B6寄存器设置),即没有RGB为24bit,MIPI为16bit的这种情况.
5. SSD2828可支持的16,18,24bit的屏,而有的屏不支持16bit的,如小米3的屏就不支持,这个要看清楚.
6. 屏的data lane和SSD2828设置的要一致
7. SSD2828的VBP, VFP, HBP, HFP,和CPU这端设置不能一致,显示不正常,我也不知道为什么.

驱动初始化包括SSD2828,LCD屏的初始化
1. SSD2828初始化主要有设置PLL, 设置LCD参数(分辨率,VBP, VFP, HBP, HFP).
   CPU这端的Pclk设置为90~120MHz, SSD2828 PLL output为800MHz左右,900以上有些危险,干扰大(跟PCB有关系咯)
2. 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, 调试中主要修改了这些寄存器

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2014-9-16 17:13:12 | 显示全部楼层
没图你是说个。。。。。

出0入0汤圆

发表于 2014-9-16 17:24:45 | 显示全部楼层
   楼主发个图看看,让我们掌掌眼

出0入0汤圆

发表于 2014-9-16 17:37:10 | 显示全部楼层
求图      

出0入0汤圆

发表于 2014-9-16 17:41:30 | 显示全部楼层
同求图。。。

出0入0汤圆

发表于 2014-9-16 17:46:46 | 显示全部楼层
有图有真相,来吧

出0入0汤圆

发表于 2014-9-16 17:51:51 | 显示全部楼层
你是用的什么主控?

出0入0汤圆

发表于 2014-9-16 18:01:36 | 显示全部楼层
求图,求真相

出0入0汤圆

 楼主| 发表于 2014-9-16 18:53:10 | 显示全部楼层
nhztb 发表于 2014-9-16 17:51
你是用的什么主控?

arm9

出0入0汤圆

发表于 2014-9-16 18:55:41 | 显示全部楼层
楼主牛逼

出0入0汤圆

发表于 2014-9-16 21:11:19 来自手机 | 显示全部楼层
直接改米3的程序算 了。有没有这个可能。

出0入0汤圆

发表于 2014-9-16 22:04:20 | 显示全部楼层
价格,不会便宜吧?

出0入0汤圆

发表于 2014-9-16 22:37:40 | 显示全部楼层
给LCD的初始化只写了0X11   0X29   就OK 了么?

出0入0汤圆

发表于 2014-9-16 22:58:02 | 显示全部楼层
楼主是逗我们的吧

出0入0汤圆

 楼主| 发表于 2014-9-16 23:13:22 | 显示全部楼层
buck 发表于 2014-9-16 20:04
2828 4lane 估算值360Mbps,楼主400Mbps可以满足

没用过那么低的,一直在800M左右,不过可以试一下

出0入0汤圆

 楼主| 发表于 2014-9-16 23:14:24 | 显示全部楼层
HYLG 发表于 2014-9-16 21:11
直接改米3的程序算 了。有没有这个可能。

要先有米3的源码才行啊

出0入0汤圆

 楼主| 发表于 2014-9-16 23:18:33 | 显示全部楼层
biansf2001 发表于 2014-9-16 22:04
价格,不会便宜吧?

CPU带有4 lanes的mipi接口应该比较贵了,ssd2828在bao上的价格也是10块左右了,arm9+ssd2828应该便宜一些

出0入0汤圆

 楼主| 发表于 2014-9-16 23:20:28 | 显示全部楼层
LCMOK 发表于 2014-9-16 22:37
给LCD的初始化只写了0X11   0X29   就OK 了么?

还有其他针对屏的,屏用的驱动IC不一样,初始化也不一样咯,这两个是通用的,而且是最主要的

出0入0汤圆

 楼主| 发表于 2014-9-16 23:22:51 | 显示全部楼层
LCMOK 发表于 2014-9-16 22:37
给LCD的初始化只写了0X11   0X29   就OK 了么?

还有其他针对屏的,屏用的驱动IC不一样,初始化也不一样咯,这两个是通用的,而且是最主要的。主要目的是让调试的人知道不光要设置SSD2828,还需要设置LCD这个概念,刚调试网上找很少资料的,弄了好久才弄懂原来LCD也需要初始化的。

出0入0汤圆

 楼主| 发表于 2014-9-16 23:25:45 | 显示全部楼层

晕,写那么长的文章逗你们玩有意思吗?刚调试这个东西概念都不懂,网上资料又少,没有FAE支持,都快把我逼疯了,

出0入0汤圆

 楼主| 发表于 2014-9-16 23:28:30 | 显示全部楼层

相互学习,时间花在哪,就会在哪有收获,

出0入0汤圆

发表于 2014-9-17 07:22:31 | 显示全部楼层
那是要用这个做什么?

出0入0汤圆

发表于 2014-9-17 07:24:04 | 显示全部楼层
buck 发表于 2014-9-17 06:21
2Mbps = 1MHz  ,理论值只比你的小点而已,所以我说你的频率是适合的。

你也太早了吧,带孩子醒了,睡不着,又来看帖了

出0入0汤圆

 楼主| 发表于 2014-9-17 09:50:02 | 显示全部楼层
buck 发表于 2014-9-17 08:30
整天操着卖白粉的心,已经提前进入老龄时代了,最近不到五点就醒....

5点就醒了!!有点早了 ,以前我爷爷也要到6点啊

出0入0汤圆

发表于 2014-9-17 10:22:34 | 显示全部楼层
mark,可能以后有用到。谢谢分享

出0入0汤圆

发表于 2014-9-19 09:40:14 | 显示全部楼层
主楼真强悍
就佩服这种调底层驱动的 能力是一方面 毅力更重要

出0入0汤圆

发表于 2014-9-19 09:55:50 | 显示全部楼层
真强。其实有时候很想搞个手机屏幕做到产品上用,效果好,价格也还可以

出40入42汤圆

发表于 2014-9-19 11:12:32 | 显示全部楼层
下载顶贴

出0入0汤圆

发表于 2014-9-22 03:28:57 | 显示全部楼层
楼主,是不是按照屏幕参数设置好RGB参数就可以了。我现在的情况是mipi几组差分线有信号,时钟正常,但就是无法显示,哪怕花屏也没有,不知哪里错了

出0入0汤圆

发表于 2014-9-22 04:16:35 | 显示全部楼层
請問一下樓主 是用什麼板子點的
有淘寶連結嗎?

出0入4汤圆

发表于 2014-9-22 06:51:41 来自手机 | 显示全部楼层
牛逼大了

出0入0汤圆

发表于 2014-9-22 07:38:43 来自手机 | 显示全部楼层
触屏用上没呢

出0入0汤圆

发表于 2014-9-22 08:24:00 | 显示全部楼层
方便透露下主控芯片吗?

出5入0汤圆

发表于 2014-9-22 08:59:44 | 显示全部楼层
赞一个,,显示效果还可以

出10入0汤圆

发表于 2014-9-22 09:46:58 | 显示全部楼层
楼主牛逼

出0入0汤圆

发表于 2014-9-22 10:37:22 | 显示全部楼层
楼主真是大神啊!

出0入0汤圆

发表于 2014-9-22 10:50:18 来自手机 | 显示全部楼层
楼主你很犀利你造吗

出0入0汤圆

发表于 2014-9-22 11:50:05 | 显示全部楼层
不错,谢谢指导!

出0入0汤圆

发表于 2014-9-22 11:52:48 | 显示全部楼层
比较关心主控芯片,楼主厉害,图片好清晰好漂亮

出0入0汤圆

发表于 2014-9-22 12:02:10 | 显示全部楼层
楼主厉害   

出0入0汤圆

发表于 2014-9-22 12:35:49 来自手机 | 显示全部楼层
感谢分享经验

出0入0汤圆

发表于 2014-9-22 12:36:05 来自手机 | 显示全部楼层
感谢分享经验

出0入8汤圆

发表于 2014-9-22 12:45:21 | 显示全部楼层
好厉害。。

出0入0汤圆

发表于 2014-9-22 13:02:11 | 显示全部楼层
LCMOK 发表于 2014-9-16 22:37
给LCD的初始化只写了0X11   0X29   就OK 了么?

屏在出厂前会把要初始化的参数固化(烧录)到IC中,这就是所谓的OTP(或NVM),OTP过的屏就不需要再初始化 只需送0x29 0x11。如果没OTP过的只送0X29 0X11应该是点不亮的

出0入0汤圆

发表于 2014-9-22 13:06:11 | 显示全部楼层

请问LZ 具体是哪个型号的ARM9,像2440我记得是不可以的,它可以点横屏到2048*1024,竖屏1080*1920是不行的

出0入10汤圆

发表于 2014-9-22 15:41:48 | 显示全部楼层
LZ能共享一下SSD2828的初始化吗,最近在研究这个,正在做SSD2828的转接板。

出0入0汤圆

发表于 2014-9-22 15:58:11 来自手机 | 显示全部楼层
调试屏幕最喜欢用美女照了,哈哈

出0入0汤圆

发表于 2014-9-22 16:30:56 | 显示全部楼层
楼主牛逼

出0入0汤圆

 楼主| 发表于 2014-9-23 23:12:35 | 显示全部楼层
linuxmake 发表于 2014-9-22 03:28
楼主,是不是按照屏幕参数设置好RGB参数就可以了。我现在的情况是mipi几组差分线有信号,时钟正常,但就是 ...

设置SSD2828的PLL啊,可能跟C9, CA, CB,这几个寄存器有关,之前我也是data lane上有数据,没显示,后面设置了下这几个参数就OK了

出0入0汤圆

 楼主| 发表于 2014-9-23 23:14:22 | 显示全部楼层

MXT540S找不到资料哦,糗大了这回,要签NDA,搞不定啊,资料都没人卖

出0入0汤圆

 楼主| 发表于 2014-9-23 23:16:10 | 显示全部楼层
tianxian 发表于 2014-9-22 13:06
请问LZ 具体是哪个型号的ARM9,像2440我记得是不可以的,它可以点横屏到2048*1024,竖屏1080*1920是不行 ...

atmel的A5啊,

出0入0汤圆

 楼主| 发表于 2014-9-23 23:17:11 | 显示全部楼层
jarodzz 发表于 2014-9-22 04:16
請問一下樓主 是用什麼板子點的
有淘寶連結嗎?

没有哦,我们公司自己做的板子,不是开发板

出0入0汤圆

 楼主| 发表于 2014-9-23 23:19:54 | 显示全部楼层
tianxian 发表于 2014-9-22 13:02
屏在出厂前会把要初始化的参数固化(烧录)到IC中,这就是所谓的OTP(或NVM),OTP过的屏就不需要再初始化 ...

其实MI3的屏不用发29,11命令都能点亮,设置好SSD2828就OK了,没试过其他屏,不知道其他屏不用发这两个命令能不能亮

出0入0汤圆

发表于 2014-9-23 23:21:43 | 显示全部楼层
感觉有裤子拿……不过lz搞这驱动干啥用呢?

出0入0汤圆

 楼主| 发表于 2014-9-23 23:24:15 | 显示全部楼层
whf199191 发表于 2014-9-23 23:21
感觉有裤子拿……不过lz搞这驱动干啥用呢?

项目相关,不然花时间去玩他干咱

出0入0汤圆

发表于 2014-9-23 23:26:56 | 显示全部楼层
Xplain 发表于 2014-9-23 23:24
项目相关,不然花时间去玩他干咱

lz能说说是啥项目么……感觉能用这屏的应该都可以用APP形式替代吧?本人刚出校门,还请指教呀~

出0入0汤圆

 楼主| 发表于 2014-9-23 23:28:09 | 显示全部楼层
bias 发表于 2014-9-22 15:41
LZ能共享一下SSD2828的初始化吗,最近在研究这个,正在做SSD2828的转接板。

领导在看帖呢,你说能给你吗兄弟

出0入0汤圆

 楼主| 发表于 2014-9-23 23:30:10 | 显示全部楼层
whf199191 发表于 2014-9-23 23:26
lz能说说是啥项目么……感觉能用这屏的应该都可以用APP形式替代吧?本人刚出校门,还请指教呀~ ...

没有驱动APP搞什么嘛,想画图最少屏要亮吧

出0入0汤圆

发表于 2014-9-23 23:50:53 | 显示全部楼层
Xplain 发表于 2014-9-23 23:30
没有驱动APP搞什么嘛,想画图最少屏要亮吧

硬件用蓝牙、wifi或otg外接,软件部分用APP,只要是个智能机就成……所以才问为啥要搞屏幕……

出0入10汤圆

发表于 2014-9-24 08:59:05 | 显示全部楼层
Xplain 发表于 2014-9-23 23:28
领导在看帖呢,你说能给你吗兄弟

.......领导在看,你还敢发帖子

出0入0汤圆

发表于 2014-9-24 09:13:35 | 显示全部楼层
我靠,楼主怎么找到米3屏的资料的?

出0入10汤圆

发表于 2014-9-24 17:18:27 | 显示全部楼层
LZ请教个问题,SSD2828 QFN封装的底座是悬空还是接GND还是VDD?
我在规格书没找到,是不是悬空就可以了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2014-9-25 05:43:18 | 显示全部楼层
bias 发表于 2014-9-24 17:18
LZ请教个问题,SSD2828 QFN封装的底座是悬空还是接GND还是VDD?
我在规格书没找到,是不是悬空就可以了

连接GND。。。。。。。

出0入0汤圆

发表于 2014-9-25 06:51:24 | 显示全部楼层
佩服厉害。

出0入0汤圆

发表于 2014-9-25 08:11:44 | 显示全部楼层
楼主厉害

出0入0汤圆

发表于 2014-9-25 11:46:15 | 显示全部楼层
mark         

出0入0汤圆

发表于 2014-9-25 12:57:40 | 显示全部楼层
ssd2828+ARM9价格还可以接受

出0入0汤圆

发表于 2014-9-28 20:41:27 | 显示全部楼层
tianxian 发表于 2014-9-22 13:02
屏在出厂前会把要初始化的参数固化(烧录)到IC中,这就是所谓的OTP(或NVM),OTP过的屏就不需要再初始化 ...

看来兄台是做屏的专家

出0入0汤圆

发表于 2014-9-28 21:01:09 | 显示全部楼层

ssd2828+ARM9 mark

出0入0汤圆

发表于 2014-9-28 21:28:01 | 显示全部楼层
楼主好厉害啊  这种屏幕没资料都能驱动。

出0入0汤圆

 楼主| 发表于 2014-9-29 11:49:35 | 显示全部楼层
richards 发表于 2014-9-28 21:28
楼主好厉害啊  这种屏幕没资料都能驱动。

屏能亮就好调了,屏亮了之后其他参数慢慢调,过程虽然很痛苦

出0入0汤圆

发表于 2014-9-29 17:01:35 | 显示全部楼层
楼主,能不能说一下如何读取屏幕的id,我读出来屏幕的ID是错误的,不知道问题出现在哪里

出0入0汤圆

发表于 2014-9-29 17:02:24 | 显示全部楼层
还有你spi采用的是24bit还是8bit的方式

出0入0汤圆

 楼主| 发表于 2014-9-30 08:36:26 | 显示全部楼层
linuxmake 发表于 2014-9-29 17:02
还有你spi采用的是24bit还是8bit的方式

24bit 8bit试过了都可以的

出0入0汤圆

发表于 2014-9-30 08:43:01 | 显示全部楼层
牛人呀, 这都可以搞定

出0入0汤圆

 楼主| 发表于 2014-9-30 09:01:52 | 显示全部楼层
linuxmake 发表于 2014-9-29 17:01
楼主,能不能说一下如何读取屏幕的id,我读出来屏幕的ID是错误的,不知道问题出现在哪里 ...

我用DA,DB,DC(user command)指令去读屏的ID全都是0,但是用BF(manufacturer command)去读驱动IC的ID是对的,每个屏的manufacturer command应该是不一样的,要看一下驱动IC的手册

出0入102汤圆

发表于 2014-9-30 09:06:53 | 显示全部楼层
期待楼主发更详尽的资料,学习一下。

出0入0汤圆

发表于 2014-9-30 09:12:11 | 显示全部楼层
mark

出0入0汤圆

发表于 2014-9-30 09:41:08 | 显示全部楼层
楼主 V5啊。

出0入0汤圆

发表于 2014-10-6 20:58:22 | 显示全部楼层
楼主,我安装图片流程,无法通过mipi读取液晶IC的寄存器,请问问题出现在哪里,使能了PLL也不行

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2014-10-6 21:03:59 | 显示全部楼层
代码如下:
        SPI_2828_WrCmd(0xb7);
        SPI_WriteData(0x90);// 82 50=TX_CLK 70=PCLK
        SPI_WriteData(0x02);// 03 //Configuration Register
       
        SPI_2828_WrCmd(0xbc);
        SPI_WriteData(0x01);
        SPI_WriteData(0x00);
        SPI_2828_WrCmd(0xbf);
        SPI_WriteData(0xda); //dah 屏的ID 指令
        SPI_WriteData(0x00);
        LCD_delay_ms(500);
       
        printk("Interrupt Status register : 0x%02X\n",SPI_READ(0xc6));
   //spi read SSD2828
        //SPI_2828_WrReg(0xd4, 0x00FA);
        SPI_2828_WrCmd(0xd4);
        SPI_WriteData(0x01);
        SPI_WriteData(0x00);
       
        printk("hui:MIPI IC: 0x%x\n",SPI_READ(0xff));

出0入0汤圆

 楼主| 发表于 2014-10-9 09:03:42 | 显示全部楼层
linuxmake 发表于 2014-10-6 21:03
代码如下:
        SPI_2828_WrCmd(0xb7);
        SPI_WriteData(0x90);// 82 50=TX_CLK 70=PCLK

        ssd_set_register(0xB7, 0x03C0);  // DSC read packet, LP mode
        ssd_set_register(0xC1, 0x0001);  // 要读的字节数       
        ssd_set_register(0xBC, 0x0001);
        ssd_set_register(0xBF, 0x000C);  // get_pixel_format
        delay(20);
        ssd_get_register(0xFF);
        printHex(rxBuffer, 4, 4);
这是24bit方式读屏多少位的代码,你参考一下呗,读回的数据放在全局变量rxBuffer中

出0入0汤圆

发表于 2014-10-9 10:41:32 | 显示全部楼层
Xplain 发表于 2014-10-9 09:03
ssd_set_register(0xB7, 0x03C0);  // DSC read packet, LP mode
        ssd_set_register(0xC1, 0x0001);  // ...

还有就是RGB信号线要求严格吗,我现在用杜邦线连接好像效果不好。

出50入0汤圆

发表于 2014-10-9 11:02:18 | 显示全部楼层
我有个红米的屏幕,回去也研究一下。

出0入0汤圆

 楼主| 发表于 2014-10-10 00:02:15 | 显示全部楼层
linuxmake 发表于 2014-10-9 10:41
还有就是RGB信号线要求严格吗,我现在用杜邦线连接好像效果不好。

杜邦线有些影响,屏幕有点抖哦

出0入0汤圆

发表于 2014-10-10 08:47:51 | 显示全部楼层
我有块moto的屏 试试

出0入0汤圆

发表于 2014-10-18 23:19:40 | 显示全部楼层
楼主,我现在显示图片是没有问题,但是进入andorid系统后就出现花屏,黑屏的情况。你有没有遇到过这个情况?

出0入0汤圆

发表于 2014-10-18 23:21:35 | 显示全部楼层
还有就是,一旦出现黑屏就无法重新正常显示,这应该是时序问题吧

出0入0汤圆

 楼主| 发表于 2014-10-19 10:21:15 | 显示全部楼层
linuxmake 发表于 2014-10-18 23:21
还有就是,一旦出现黑屏就无法重新正常显示,这应该是时序问题吧

以前我用杜邦线连的时候就有这种问题,抖动很厉害,然后就黑屏,后面做板出来之后就没有了

出0入0汤圆

发表于 2014-10-19 13:01:36 | 显示全部楼层
Xplain 发表于 2014-10-19 10:21
以前我用杜邦线连的时候就有这种问题,抖动很厉害,然后就黑屏,后面做板出来之后就没有了 ...

好的,我现在把时钟降了些,好了些。你也是在android移植吗

出0入0汤圆

 楼主| 发表于 2014-10-19 23:16:04 | 显示全部楼层
linuxmake 发表于 2014-10-19 13:01
好的,我现在把时钟降了些,好了些。你也是在android移植吗

没有,我跑裸机的

出0入10汤圆

发表于 2014-11-12 12:24:45 | 显示全部楼层
楼主帮我看一下,我在初始化的时候能测试到MIPI_D0_N有波形,见图片右侧,初始化完成后的时间段内,MIPI_D0_N反而没有波形,只有50HZ左右的一个脉冲,可是我RGB有信号输入的(RGB信号正常)
按照你说的这是2828还没设置好,跟细节调节无关,些过去的0x11,0x29都起作用了,屏幕已经亮起,屏幕上都是各种颜色随机的雪花点,感觉就是RGB没到MIPI这边来,能帮我看看是什么问题吗?

这是初始化时候的波形


这是初始化之后的波形



        SSD2828_GPIO_Config();
        LCD_and_SSD2828_Reset();
       
        //PLL Configure
        SSD2828_SPI_WriteCmd(0x00BA); SSD2828_SPI_WriteDat(0x8014);        //Fout = Fin * 0x14 / 1 = 24M * 20 /1 = 480M
        SSD2828_SPI_WriteCmd(0x00BB); SSD2828_SPI_WriteDat(0x0005);        //LP(Low Power) Clock = Fout /6/8 = 10M
        SSD2828_SPI_WriteCmd(0x00B9); SSD2828_SPI_WriteDat(0x0001);        //PLL ENABLE
        Delay_MS(100);
       
        //RGB Input Interface Control
        SSD2828_SPI_WriteCmd(0x00B1); SSD2828_SPI_WriteDat((LCD_VSPW<<8)+LCD_HSPW);
        SSD2828_SPI_WriteCmd(0x00B2); SSD2828_SPI_WriteDat((LCD_VBP<<8)+LCD_HBP);
        SSD2828_SPI_WriteCmd(0x00B3); SSD2828_SPI_WriteDat((LCD_VFP<<8)+LCD_HFP);
        SSD2828_SPI_WriteCmd(0x00B4); SSD2828_SPI_WriteDat(LCD_HDP);
        SSD2828_SPI_WriteCmd(0x00B5); SSD2828_SPI_WriteDat(LCD_VDP);
        SSD2828_SPI_WriteCmd(0x00B6); SSD2828_SPI_WriteDat(0x0007);        //HS,VS,PCLK极性都=0 , Bit[1:0]=11=24bpp
       
        //MIPI Lane Configure
        SSD2828_SPI_WriteCmd(0x00DE); SSD2828_SPI_WriteDat(0x0001);        //2 Data Lane
        SSD2828_SPI_WriteCmd(0x00C9); SSD2828_SPI_WriteDat(0x2302);        //p1: HS-Data-zero  p2: HS-Data- prepare  --> 8031 issue
        SSD2828_SPI_WriteCmd(0x00D6); SSD2828_SPI_WriteDat(0x0005);        //Bit[7:2]:Send X(now=1) Packet in Blanking Period, Bit[0]:1=R.G.B/0=B.G.R
        SSD2828_SPI_WriteCmd(0x00C4); SSD2828_SPI_WriteDat(0x0001);        //Enable BTA
        Delay_MS(100);
       
        //use MIPI Init LCD
        SSD2828_DCS_Write(tab1);
        SSD2828_DCS_Write(tab2);
        SSD2828_DCS_Write(tab3);
        SSD2828_DCS_Write(tab4);
        SSD2828_DCS_Write(tab5);
        SSD2828_DCS_Write(tab6);
        SSD2828_DCS_Write(tab7);
        SSD2828_DCS_Write(tab8);
        SSD2828_DCS_Write(tab9);
        SSD2828_DCS_Write(tab10);
        SSD2828_DCS_Write(tab11);
        SSD2828_DCS_Write(tab12);
        SSD2828_DCS_Write(tab13);
        SSD2828_DCS_Write(tab14);
        SSD2828_DCS_Write(tab15);
        SSD2828_DCS_Write(tab16);
        SSD2828_DCS_Write(tab17);
        SSD2828_DCS_Write(tab18);
        SSD2828_DCS_Write(tab19);
        SSD2828_DCS_Write(tab20);
        SSD2828_DCS_Write(tab21);
        SSD2828_DCS_Write(tab22);
        SSD2828_DCS_Write(tab23);
        SSD2828_DCS_Write(tab24);
        SSD2828_DCS_Write(tab25);
        SSD2828_DCS_Write(tab26);
        SSD2828_DCS_Write(tab27);
        SSD2828_DCS_Write(tab28);
        SSD2828_DCS_Write(tab29);
        SSD2828_DCS_Write(tab30);
        SSD2828_DCS_Write(tab31);
        SSD2828_DCS_Write(tab32);
        SSD2828_DCS_Write(tab33);
        SSD2828_DCS_Write(tab34);
        SSD2828_DCS_Write(SleeOut);
        Delay_MS(120);
        SSD2828_DCS_Write(DisplayON);
        SSD2828_DCS_Write(MWrite);
//        test();
       
        SSD2828_SPI_WriteCmd(0x00E9); SSD2828_SPI_WriteDat(0xff2f);
        SSD2828_SPI_WriteCmd(0x00EB); SSD2828_SPI_WriteDat(0x0100);
       
       
        SSD2828_SPI_WriteCmd(0x00B7); SSD2828_SPI_WriteDat(0x034B);

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2014-11-12 12:27:51 | 显示全部楼层
靠,这头猪看着有3D的感觉

出0入0汤圆

发表于 2014-11-12 12:32:08 | 显示全部楼层
好牛逼
这都能搞出来

出0入0汤圆

发表于 2014-11-20 17:31:31 | 显示全部楼层
mark ,好东西,手机屏幕资料不好找

出0入0汤圆

发表于 2014-11-25 10:51:01 | 显示全部楼层
bias 发表于 2014-11-12 12:24
楼主帮我看一下,我在初始化的时候能测试到MIPI_D0_N有波形,见图片右侧,初始化完成后的时间段内,MIPI_D0 ...

    哥们,你的SSD2828驱动LCD屏调试得怎么样了?

    我对这个很感兴趣,像请教你个问题   SPI Generic mode下对LCD屏通过0XBF发送的发送的数据时什么定义的,有没一个相关协议!

出0入10汤圆

发表于 2014-11-25 11:23:55 | 显示全部楼层
BigTang 发表于 2014-11-25 10:51
哥们,你的SSD2828驱动LCD屏调试得怎么样了?

    我对这个很感兴趣,像请教你个问题   SPI Generic ...

通过0xBF发送的是屏的初始化 ,跟2828无关,看屏的资料

出0入0汤圆

发表于 2014-11-25 11:34:10 | 显示全部楼层
bias 发表于 2014-11-25 11:23
通过0xBF发送的是屏的初始化 ,跟2828无关,看屏的资料

     谢谢,大概知道了。
     还有点向您请教:对屏的寄存器读写数据是什么格式(写寄存器 先写地址  再写数据)?

出0入10汤圆

发表于 2014-11-25 11:52:10 | 显示全部楼层
BigTang 发表于 2014-11-25 11:34
谢谢,大概知道了。
     还有点向您请教:对屏的寄存器读写数据是什么格式(写寄存器 先写地址  再 ...

通过0xBF发出去的数据,第一个一般是寄存器,后面是数据,跟mcu口初始化液晶一样

出0入0汤圆

发表于 2014-11-25 11:57:22 | 显示全部楼层
bias 发表于 2014-11-25 11:52
通过0xBF发出去的数据,第一个一般是寄存器,后面是数据,跟mcu口初始化液晶一样
...

   好的 知道了   谢谢!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-25 16:05

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表