免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 12587 | 回复: 14
打印 上一主题 下一主题

Framebuffer中的pixclock如何计算 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-09-24 17:34 |只看该作者 |倒序浏览
在CU中不久前也有位兄弟提了这个问题,但一个回复都没有
于是在网上找了好久,几乎没有关于这个的计算公式,全都是一下子就写好的一个值,根本就没提过说计算公式,所以很迷糊
特此一问,希望能够解释得清楚一点
谢谢

论坛徽章:
0
2 [报告]
发表于 2008-09-24 17:40 |只看该作者

回复 #1 qspy 的帖子

为何要计算Framebuffer中的pixclock?

论坛徽章:
0
3 [报告]
发表于 2008-09-24 17:48 |只看该作者
移植不同lcd的时候,要知道吧
再者,从学习的角度讲,也是需要知道的吧

论坛徽章:
0
4 [报告]
发表于 2008-09-24 22:38 |只看该作者
320x240为例

(21+320+22)x(11+240+12)x60

21 为 前插 (行插入)
22 为 后插 (行插入)

11 为 前插 (场插入)
12 为 后插  (场插入)

前插后插 每个屏要求不一样
不知道 前插后插什么意思的  看 <<电视原理>>

论坛徽章:
0
5 [报告]
发表于 2008-09-25 09:36 |只看该作者

回复 #3 qspy 的帖子

你好好看一下LCD的数据资料,上面有pixclock的值。干嘛还要计算啦?

论坛徽章:
0
6 [报告]
发表于 2008-09-25 10:00 |只看该作者
原帖由 rodgerluo 于 2008-9-25 09:36 发表
你好好看一下LCD的数据资料,上面有pixclock的值。干嘛还要计算啦?

有吗?不知道你指的是不是timing characteristics的表格?

[ 本帖最后由 qspy 于 2008-9-25 10:13 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2008-09-25 10:07 |只看该作者
原帖由 liyaoshi 于 2008-9-24 22:38 发表
320x240为例

(21+320+22)x(11+240+12)x60

21 为 前插 (行插入)
22 为 后插 (行插入)

11 为 前插 (场插入)
12 为 后插  (场插入)

前插后插 每个屏要求不一样
不知道 前插后插什么意思的  看  


这个不对吧
比如源码的mach-smdk2440.c文件中定义的:
static struct s3c2410fb_display smdk2440_lcd_cfg __initdata = {

&nbsp;&nbsp;&nbsp;&nbsp;.lcdcon5&nbsp;&nbsp;&nbsp;&nbsp;= S3C2410_LCDCON5_FRM565 |
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  S3C2410_LCDCON5_INVVLINE |
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  S3C2410_LCDCON5_INVVFRAME |
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  S3C2410_LCDCON5_PWREN |
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  S3C2410_LCDCON5_HWSWP,

&nbsp;&nbsp;&nbsp;&nbsp;.type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= S3C2410_LCDCON1_TFT,

&nbsp;&nbsp;&nbsp;&nbsp;.width&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 240,
&nbsp;&nbsp;&nbsp;&nbsp;.height&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 320,

&nbsp;&nbsp;&nbsp;&nbsp;.pixclock&nbsp;&nbsp;&nbsp;&nbsp;= 166667, /* HCLK 60 MHz, divisor 10 */
&nbsp;&nbsp;&nbsp;&nbsp;.xres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 240,
&nbsp;&nbsp;&nbsp;&nbsp;.yres&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 320,
&nbsp;&nbsp;&nbsp;&nbsp;.bpp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 16,
&nbsp;&nbsp;&nbsp;&nbsp;.left_margin&nbsp;&nbsp;&nbsp;&nbsp;= 20,
&nbsp;&nbsp;&nbsp;&nbsp;.right_margin&nbsp;&nbsp;&nbsp;&nbsp;= 8,
&nbsp;&nbsp;&nbsp;&nbsp;.hsync_len&nbsp;&nbsp;&nbsp;&nbsp;= 4,
&nbsp;&nbsp;&nbsp;&nbsp;.upper_margin&nbsp;&nbsp;&nbsp;&nbsp;= 8,
&nbsp;&nbsp;&nbsp;&nbsp;.lower_margin&nbsp;&nbsp;&nbsp;&nbsp;= 7,
&nbsp;&nbsp;&nbsp;&nbsp;.vsync_len&nbsp;&nbsp;&nbsp;&nbsp;= 4,
};


依你的公式一算:
pixclock = ( 20 +240 +8 ) * ( 8+320+7 ) * 60 = 5386800
和其中已定义的166667这个值并不符

论坛徽章:
0
8 [报告]
发表于 2008-09-25 11:51 |只看该作者

回复 #7 qspy 的帖子

.pixclock    = 166667, /* HCLK 60 MHz, divisor 10 *
你自己都写出来了,那你是怎么计算的啦?

没错是timing characteristics的表格。我是按照LCD上的数据资料写的pixclock。

论坛徽章:
0
9 [报告]
发表于 2008-09-25 12:15 |只看该作者
那段代码是内核源码里的,值也是其默认的,并不是我添加进去的

附图里的参数,哪一个是 pixclock ?

timing.JPG (81.42 KB, 下载次数: 62)

timing.JPG

论坛徽章:
0
10 [报告]
发表于 2008-09-25 12:40 |只看该作者
你用的是不是Sharp的屏?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP