nv3052cRGB 720*720屏出现花屏,颜色失真,请问是什么原因
-
-
试试修改下厂家给的initcode,之前遇到过这样的,但是没这么严格
-
@YuzukiTsuru 谢谢大佬,请问这个是厂家给的初始化代码问题是吗?和soc方面有关系吗?因为改 了相关的参数,将像素时钟反相过也没得到改善,更改了RGB寄存器的输出方式也没得到改善,不知道问题出在哪,麻烦大佬能进一步指点一下吗
-
@fans168168 之前我调试过这款屏幕,initcode的问题,尽量不要从soc驱动修改,扩大问题
-
@yuzukitsuru 好的,谢谢,您还有这款屏的初始化代码吗?问了屏厂家,说他们的初始化没问题,让我找soc提供帮助
-
@yuzukitsuru 这是厂家提供的初始化
#define VSPW 2 #define VBPD 18 #define VFPD 16 #define HSPW 2 #define HBPD 44 #define HFPD 46 //PCLK 30MHZ //////////////////NV3052CGRB+BOE3.95 RGB//////////////////// Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0130); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0152); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0101); Write_LCD_REG(0x0000,0x00E3); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00F6); Write_LCD_REG(0x0000,0x01C0); Write_LCD_REG(0x0000,0x00F0); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x000A); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x0023); Write_LCD_REG(0x0000,0x01A0);//0xa2 dck Write_LCD_REG(0x0000,0x0025); Write_LCD_REG(0x0000,0x0114); Write_LCD_REG(0x0000,0x0026); Write_LCD_REG(0x0000,0x012E); Write_LCD_REG(0x0000,0x0027); Write_LCD_REG(0x0000,0x012E); Write_LCD_REG(0x0000,0x0029); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x002A); Write_LCD_REG(0x0000,0x01CF); Write_LCD_REG(0x0000,0x0032); Write_LCD_REG(0x0000,0x0134); Write_LCD_REG(0x0000,0x0038); Write_LCD_REG(0x0000,0x019C); Write_LCD_REG(0x0000,0x0039); Write_LCD_REG(0x0000,0x01A7); Write_LCD_REG(0x0000,0x003A); Write_LCD_REG(0x0000,0x0157); Write_LCD_REG(0x0000,0x003B); Write_LCD_REG(0x0000,0x0194); Write_LCD_REG(0x0000,0x0040); Write_LCD_REG(0x0000,0x0107); Write_LCD_REG(0x0000,0x0042); Write_LCD_REG(0x0000,0x016D); Write_LCD_REG(0x0000,0x0043); Write_LCD_REG(0x0000,0x0183); Write_LCD_REG(0x0000,0x0081); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0091); Write_LCD_REG(0x0000,0x0157); Write_LCD_REG(0x0000,0x0092); Write_LCD_REG(0x0000,0x0157); Write_LCD_REG(0x0000,0x0099); Write_LCD_REG(0x0000,0x0150); Write_LCD_REG(0x0000,0x009b); Write_LCD_REG(0x0000,0x0150); Write_LCD_REG(0x0000,0x00A0); Write_LCD_REG(0x0000,0x0152); Write_LCD_REG(0x0000,0x00A1); Write_LCD_REG(0x0000,0x0150); Write_LCD_REG(0x0000,0x00A4); Write_LCD_REG(0x0000,0x019C); Write_LCD_REG(0x0000,0x00A7); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00A8); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00A9); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00AA); Write_LCD_REG(0x0000,0x01A8); Write_LCD_REG(0x0000,0x00AB); Write_LCD_REG(0x0000,0x0128); Write_LCD_REG(0x0000,0x00AE); Write_LCD_REG(0x0000,0x01D2); Write_LCD_REG(0x0000,0x00AF); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00B0); Write_LCD_REG(0x0000,0x01D2); Write_LCD_REG(0x0000,0x00B2); Write_LCD_REG(0x0000,0x0126); Write_LCD_REG(0x0000,0x00B3); Write_LCD_REG(0x0000,0x0126); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0130); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0152); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00B0); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00B1); Write_LCD_REG(0x0000,0x010E); Write_LCD_REG(0x0000,0x00B2); Write_LCD_REG(0x0000,0x0108); Write_LCD_REG(0x0000,0x00B3); Write_LCD_REG(0x0000,0x0129); Write_LCD_REG(0x0000,0x00B4); Write_LCD_REG(0x0000,0x0128); Write_LCD_REG(0x0000,0x00B5); Write_LCD_REG(0x0000,0x0137); Write_LCD_REG(0x0000,0x00B6); Write_LCD_REG(0x0000,0x0112); Write_LCD_REG(0x0000,0x00B7); Write_LCD_REG(0x0000,0x0132); Write_LCD_REG(0x0000,0x00B8); Write_LCD_REG(0x0000,0x010B); Write_LCD_REG(0x0000,0x00B9); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x00BA); Write_LCD_REG(0x0000,0x010E); Write_LCD_REG(0x0000,0x00BB); Write_LCD_REG(0x0000,0x010D); Write_LCD_REG(0x0000,0x00BC); Write_LCD_REG(0x0000,0x0110); Write_LCD_REG(0x0000,0x00BD); Write_LCD_REG(0x0000,0x0113); Write_LCD_REG(0x0000,0x00BE); Write_LCD_REG(0x0000,0x0118); Write_LCD_REG(0x0000,0x00BF); Write_LCD_REG(0x0000,0x010F); Write_LCD_REG(0x0000,0x00C0); Write_LCD_REG(0x0000,0x0116); Write_LCD_REG(0x0000,0x00C1); Write_LCD_REG(0x0000,0x0108); Write_LCD_REG(0x0000,0x00D0); Write_LCD_REG(0x0000,0x0105); Write_LCD_REG(0x0000,0x00D1); Write_LCD_REG(0x0000,0x010B); Write_LCD_REG(0x0000,0x00D2); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x00D3); Write_LCD_REG(0x0000,0x0133); Write_LCD_REG(0x0000,0x00D4); Write_LCD_REG(0x0000,0x0132); Write_LCD_REG(0x0000,0x00D5); Write_LCD_REG(0x0000,0x0132); Write_LCD_REG(0x0000,0x00D6); Write_LCD_REG(0x0000,0x010F); Write_LCD_REG(0x0000,0x00D7); Write_LCD_REG(0x0000,0x0139); Write_LCD_REG(0x0000,0x00D8); Write_LCD_REG(0x0000,0x010B); Write_LCD_REG(0x0000,0x00D9); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00DA); Write_LCD_REG(0x0000,0x0110); Write_LCD_REG(0x0000,0x00DB); Write_LCD_REG(0x0000,0x010F); Write_LCD_REG(0x0000,0x00DC); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x00DD); Write_LCD_REG(0x0000,0x0114); Write_LCD_REG(0x0000,0x00DE); Write_LCD_REG(0x0000,0x011A); Write_LCD_REG(0x0000,0x00DF); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x00E0); Write_LCD_REG(0x0000,0x0118); Write_LCD_REG(0x0000,0x00E1); Write_LCD_REG(0x0000,0x0104); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0130); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0152); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x0000); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0001); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0002); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0003); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0008); Write_LCD_REG(0x0000,0x010A); Write_LCD_REG(0x0000,0x0009); Write_LCD_REG(0x0000,0x010B); Write_LCD_REG(0x0000,0x000A); Write_LCD_REG(0x0000,0x010C); Write_LCD_REG(0x0000,0x000B); Write_LCD_REG(0x0000,0x010D); Write_LCD_REG(0x0000,0x0020); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0021); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0022); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0023); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0028); Write_LCD_REG(0x0000,0x0122); Write_LCD_REG(0x0000,0x002A); Write_LCD_REG(0x0000,0x01e9); Write_LCD_REG(0x0000,0x002B); Write_LCD_REG(0x0000,0x01e9); Write_LCD_REG(0x0000,0x0030); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0031); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0032); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0033); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0034); Write_LCD_REG(0x0000,0x01A1); Write_LCD_REG(0x0000,0x0035); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0036); Write_LCD_REG(0x0000,0x0126); Write_LCD_REG(0x0000,0x0037); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x0040); Write_LCD_REG(0x0000,0x010D); Write_LCD_REG(0x0000,0x0041); Write_LCD_REG(0x0000,0x010E); Write_LCD_REG(0x0000,0x0042); Write_LCD_REG(0x0000,0x010F); Write_LCD_REG(0x0000,0x0043); Write_LCD_REG(0x0000,0x0110); Write_LCD_REG(0x0000,0x0044); Write_LCD_REG(0x0000,0x0122); Write_LCD_REG(0x0000,0x0045); Write_LCD_REG(0x0000,0x01e4); Write_LCD_REG(0x0000,0x0046); Write_LCD_REG(0x0000,0x01e5); Write_LCD_REG(0x0000,0x0047); Write_LCD_REG(0x0000,0x0122); Write_LCD_REG(0x0000,0x0048); Write_LCD_REG(0x0000,0x01e6); Write_LCD_REG(0x0000,0x0049); Write_LCD_REG(0x0000,0x01e7); Write_LCD_REG(0x0000,0x0050); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x0051); Write_LCD_REG(0x0000,0x0112); Write_LCD_REG(0x0000,0x0052); Write_LCD_REG(0x0000,0x0113); Write_LCD_REG(0x0000,0x0053); Write_LCD_REG(0x0000,0x0114); Write_LCD_REG(0x0000,0x0054); Write_LCD_REG(0x0000,0x0122); Write_LCD_REG(0x0000,0x0055); Write_LCD_REG(0x0000,0x01e8); Write_LCD_REG(0x0000,0x0056); Write_LCD_REG(0x0000,0x01e9); Write_LCD_REG(0x0000,0x0057); Write_LCD_REG(0x0000,0x0122); Write_LCD_REG(0x0000,0x0058); Write_LCD_REG(0x0000,0x01ea); Write_LCD_REG(0x0000,0x0059); Write_LCD_REG(0x0000,0x01eb); Write_LCD_REG(0x0000,0x0060); Write_LCD_REG(0x0000,0x0105); Write_LCD_REG(0x0000,0x0061); Write_LCD_REG(0x0000,0x0105); Write_LCD_REG(0x0000,0x0065); Write_LCD_REG(0x0000,0x010A); Write_LCD_REG(0x0000,0x0066); Write_LCD_REG(0x0000,0x010A); Write_LCD_REG(0x0000,0x0080); Write_LCD_REG(0x0000,0x010f); Write_LCD_REG(0x0000,0x0081); Write_LCD_REG(0x0000,0x010d); Write_LCD_REG(0x0000,0x0082); Write_LCD_REG(0x0000,0x010b); Write_LCD_REG(0x0000,0x0083); Write_LCD_REG(0x0000,0x0109); Write_LCD_REG(0x0000,0x008A); Write_LCD_REG(0x0000,0x0101); Write_LCD_REG(0x0000,0x008B); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x008D); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x008E); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x0090); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x0091); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x0092); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x0094); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0095); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x0096); Write_LCD_REG(0x0000,0x0110); Write_LCD_REG(0x0000,0x0097); Write_LCD_REG(0x0000,0x010e); Write_LCD_REG(0x0000,0x0098); Write_LCD_REG(0x0000,0x010c); Write_LCD_REG(0x0000,0x0099); Write_LCD_REG(0x0000,0x010a); Write_LCD_REG(0x0000,0x00A0); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00A1); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00A3); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00A4); Write_LCD_REG(0x0000,0x0104); Write_LCD_REG(0x0000,0x00A6); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00A7); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00A8); Write_LCD_REG(0x0000,0x0112); Write_LCD_REG(0x0000,0x00AA); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00AB); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00B0); Write_LCD_REG(0x0000,0x010A); Write_LCD_REG(0x0000,0x00B1); Write_LCD_REG(0x0000,0x010C); Write_LCD_REG(0x0000,0x00B2); Write_LCD_REG(0x0000,0x010E); Write_LCD_REG(0x0000,0x00B3); Write_LCD_REG(0x0000,0x0110); Write_LCD_REG(0x0000,0x00Ba); Write_LCD_REG(0x0000,0x0104); Write_LCD_REG(0x0000,0x00Bb); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00Bd); Write_LCD_REG(0x0000,0x011F); Write_LCD_REG(0x0000,0x00Be); Write_LCD_REG(0x0000,0x0102); Write_LCD_REG(0x0000,0x00c0); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00c1); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00c2); Write_LCD_REG(0x0000,0x0111); Write_LCD_REG(0x0000,0x00c4); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00c5); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00C6); Write_LCD_REG(0x0000,0x0109); Write_LCD_REG(0x0000,0x00C7); Write_LCD_REG(0x0000,0x010B); Write_LCD_REG(0x0000,0x00C8); Write_LCD_REG(0x0000,0x010D); Write_LCD_REG(0x0000,0x00C9); Write_LCD_REG(0x0000,0x010F); Write_LCD_REG(0x0000,0x00D0); Write_LCD_REG(0x0000,0x0103); Write_LCD_REG(0x0000,0x00D1); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00D3); Write_LCD_REG(0x0000,0x011F); Write_LCD_REG(0x0000,0x00D4); Write_LCD_REG(0x0000,0x0101); Write_LCD_REG(0x0000,0x00d6); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00d7); Write_LCD_REG(0x0000,0x011f); Write_LCD_REG(0x0000,0x00d8); Write_LCD_REG(0x0000,0x0112); Write_LCD_REG(0x0000,0x00dA); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00dB); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0130); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0152); Write_LCD_REG(0x0000,0x00FF); Write_LCD_REG(0x0000,0x0100); Write_LCD_REG(0x0000,0x003A); Write_LCD_REG(0x0000,0x0166); Write_LCD_REG(0x0000,0x0036); Write_LCD_REG(0x0000,0x010a); Write_LCD_REG(0x0000,0x0011); Write_LCD_REG(0x0000,0x0100); Delay_ms(200); Write_LCD_REG(0x0000,0x0029); Write_LCD_REG(0x0000,0x0100); Delay_ms(100);
-
@fans168168 个人拙见,应该是rgb色位问题。
-
@tevet 大佬,是不是控制器的数据线和驱动芯片的数据线没对上,下面是原理图,是不是连接有问题
-
@tevet 原理是不是应该这样的
-
-
@whycan 是30M
-
再看下 DE/VSYNC/HSYNC 频率是否正常,像素点抖不抖?
-
@fans168168 可以检查下RGB各颜色pin脚是否有复用,导致RGB有些脚没有输出
-
@whycan 屏有点抖,RGB都是混的,感觉是RGB都错位了一样,因为soc默认输出是24bit,屏是18bit
-
@fans168168 这种情况 大概率 rgb数据 高低位反了。
-
@anruliu 在 nv3052cRGB 720*720屏出现花屏,颜色失真,请问是什么原因 中说:
@fans168168 可以检查下RGB各颜色pin脚是否有复用,导致RGB有些脚没有输出
@fans168168 这个方法不错, 一个一个脚用示波器看下,如果没有信号,可能是被别的功能占用了。
-
@lovexulu 大佬,高低位反了,是不是和rgb数据线的接法有关
-
@whycan 都看了没有被占用,管脚都有数据输出
-
@fans168168 在 nv3052cRGB 720*720屏出现花屏,颜色失真,请问是什么原因 中说:
@lovexulu 大佬,高低位反了,是不是和rgb数据线的接法有关
那可能是接法有问题了。
-
@fans168168 是的,rgb bit0->bit7,bit1->bit6.。。。就会显示成这样。
-
此回复已被删除! -
查查是不是rgb的针脚接的顺序不对?还有rgb的高低电平是不是反了?看看屏幕手册,感觉图像能看到说明数据是有了,颜色不对
-
@whycan 我觉得这个接的有问题,
db0 1悬空,2-7接屏幕的r0-5.
db8 db9悬空 db 10-15接屏幕g0-5,
db16 db17悬空 db18-23接屏幕b 0-5 -
@fans168168 主板输出颜色255的时候,对应屏幕的颜色是64,所以一定是高位对齐,低位悬空,你这是低位对齐,高位悬空,肯定颜色会有问题
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号