【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
推荐阅读
- Linux|109 个实用 shell 脚本
- linux笔记|linux 常用命令汇总(面向面试)
- Linux|Linux--网络基础
- linux|apt update和apt upgrade命令 - 有什么区别()
- linux|2022年云原生趋势
- Go|Docker后端部署详解(Go+Nginx)
- 开源生态|GPL、MIT、Apache...开发者如何选择开源协议(一文讲清根本区别)
- GitHub|7 款可替代 top 命令的工具