Linux|LCD_PIXCLOCK怎么计算



【Linux|LCD_PIXCLOCK怎么计算】

.width = 320, .height = 240,.pixclock = 80000, /* HCLK 100 MHz, divisor 3 */ .setclkval = 0x3, .xres = 320, .yres = 240, .bpp = 16, .left_margin = 15, /* for HFPD*/ .right_margin = 5, /* for HBPD*/ .hsync_len = 8, /* for HSPW*/ .upper_margin = 5, /* for VFPD*/ .lower_margin = 3, /* for VBPD*/ .vsync_len = 15, /* for VSPW*/



请问这个LCD_PIXCLOCK是如何计算出来的?
求具体计算方法


------解决方案--------------------
先说明下像素时钟pixclock的概念
pixclock=1/dotclock其中dotclock是视频硬件在显示器上绘制像素的速率
dotclock=(x向分辨率+左空边+右空边+HSYNC长度)* (y向分辨率+上空边+下空边+YSYNC长度)*整屏的刷新率
其中x向分辨率、左空边、右空边、HSYNC长度、y向分辨率、上空边、下空边和YSYNC长度可以在X35LCD说明文档中查到。


整屏的刷新率计算方法如下:
假如我们通过查X35LCD说明文档,知道fclk=6.34MHZ,那么画一个像素需要的时间就是1/6.34us,如果屏的大小是240*320,那么现实一行需要的时间就是240/6.34us,每条扫描线是240,但是水平回扫和水平同步也需要时间,如果水平回扫和水平同步需要29个像素时钟,因此,画一条扫描线完整的时间就是(240+29) /6.34us。完整的屏有320根线,但是垂直回扫和垂直同步也需要时间,如果垂直回扫和垂直同步需要13个像素时钟,那么画一个完整的屏需要(240+29)*(320+13)/6.34us,所以整屏的刷新率就是6.34/((240+29)*(320+13))MHZ


源:http://www.myexception.cn/embedded-driver/1136626.html



    推荐阅读