找回密码
 注册
搜索
查看: 2716|回复: 20

[讨论] 求教:关于lcd和sensor的几个问题和讨论

[复制链接]
发表于 2007-10-25 16:58:39 | 显示全部楼层 |阅读模式
  undefined
 楼主| 发表于 2007-10-25 17:01:52 | 显示全部楼层
我这几个问题是关于lcd和sensor的,原理上应该具有普遍性,
但实际上应该和具体实现关系很大,我的平台是mtk6226,05C代码,
望老手高手们指导,别嫌我罗嗦,我是想把问题和现象说得清楚些。

一、播放存储卡上电影时显示屏幕跳动出现分屏的现象。
    但是播放开关机等动画的时候没有任何问题,其它
    情况下的lcd显示也没有任何问题。
    播放速度越高,跳动越厉害,播放速度为0.5的时候就
    只有轻微跳动。另外,任何时候旋转为全屏播放正常,
    暂停播放后的画面也正常。

    这个问题刚开始怀疑是LCD驱动时序的问题,但是修改
    时序和在BlockWrite函数坐标寄存器写入间加入延迟,
    问题依旧;另外如果是时序有问题的话,由于播放电影
    时是显示数据的高速刷新,数据出错应该引起花屏现象,
    但是并没有任何颜色出错,
    所以后来认为不是LCD驱动时序问题。
   
    然后怀疑是驱动或上层应用播放时传递的坐标不对。
    但是因为任何时候暂停播放后的画面和播放一般的gif,
    图片显示等都正常,所以排除驱动的BlockWrite函数
    坐标设置错误;同时trace上层应用请求播放电影时
    传过来的坐标也发现没有任何问题。

    因为播放时降低速度跳动现象有好转,又怀疑是6226
    mpeg4解码速度慢或者lcd总线刷新跟不上引起的,
    但是我们屏小(128X160),8bit并行数据总线,52MHz
    这个想法也基本不成立。另外,因为播放时如果旋转为
    全屏播放的话也正常,也能证明不存在吞吐率问题。

    希望高人们能提供些思路和debug方法

二、附带地,camera摄像时屏幕也有同样的现象,通常大家
    会修改sensor的帧率,时钟,图像的分辨率等来解决这个
    问题。但是因为我单单播放电影文件时也跳动,所以看来
    并不是camera的帧率问题。

三、ov7660问题。preivew下当被拍摄物体在摄像头前移动或者摄像头
    突然对着光照条件不同的场景时,屏幕上会出现面积形状
    都不定橘红色区域。比如用手指挡住lens再拿开时,对着
    白色背景的电脑液晶显示器时,现象最严重。不知道是什么
    原因?请达人指点。调整曝光等基本没有什么改善。ov的
    fae居然跟我说这是我lcd太差,气死我了。
     
    知道原因的老手们要不吝赐教啊,感激不尽。

四、由于使用的是rgb raw格式,因此ov的fae说sensor本身
    没有什么好调的了,主要调的是mtk的isp相关部分。
    但是isp相关的东西我只看到bb chip的datasheet上有
    简单介绍(只有些寄存器列表,语焉不详),所以我很
    奇怪大家是怎么调的,这个isp我觉得可能要几百页的
    文档才能讲清楚的,大家调试时怎么知道的该怎么修改
    那些寄存器呢

    既然rgb raw不好搞,那就用yuv吧,但是我要了一份代码
    过来想合并到我的05C中,结果失败了,好多都编译不过
    (isp_yuv_if.c .h , cam_hp_msg_handler.c, cam_hp_ilm.c
    med_c_main.c, med_api.h, img_comm.c, med_context.h
    med_c_context.h, med_c_main.h.....等文件 )

    做个这个的说几句,能留个联系方式最好了。


五、还有一个就是gamma表的问题,我问ov的fae要,结果他说
    因为我用的是rgb raw,所以得问mtk要,虽然现在gamma
    校正确实是isp做得,但是我想这个东西是根据每个sensor/lens
    的色彩和感光特性来的呀,ov的人就会推脱,nnd。不知道
    我这个想法对不?

六、还有就是一个旋转问题,我的preview图和实际物体差了90度,
    sensor寄存器只能调mirror和flip,而makefile中SENSOR_ROTATE
    宏的SENSOR_ROTATE_90, SENSOR_ROTATE_270两个取值在代码
    中事实上是不支持的,不起作用。其实我认为isp完全应该
    能解决这个问题的,只需要以某种顺序写入和另一种顺序读出
    象素数据,但不知道为什么SENSOR_ROTATE_90, SENSOR_ROTATE_270
    就是不支持。不知道大家都是怎么解决的,
    有人跟我说让厂家重做模块,不知道能行不,厂家又根据什么
    道理可以改这个呢?
    另外还有个size match问题,sensor 640X480,而LCD 128X160,
    bb chip中的resier电路驱动程序能根据我的sensor和lcd size自动
    match吗,还是不行,所以才造成了我的rotate90问题?

七、有人跟我说rgb raw只有mtk能调,还需要一些工具和仪器等,
    真的吗?

八、时序问题。我代码中
    #if defined(CAM_PREVIEW_15FPS)
                SET_TG_OUTPUT_CLK_DIVIDER(3);
                SET_CMOS_RISING_EDGE(0);
                SET_CMOS_FALLING_EDGE(2);
                ENABLE_CAMERA_PIXEL_CLKIN_ENABLE;
                SET_TG_PIXEL_CLK_DIVIDER(7);
                SET_CMOS_DATA_LATCH(3);
    Mclk=52/(3+1)=13M, plck=13/(7+1)=1.75M,
    但是我640X480X15都不止这个数啊,还没有算dummy line&piexl,
    有人能解释下吗?
点评回复

使用道具 举报

 楼主| 发表于 2007-10-25 17:04:11 | 显示全部楼层
不知道为什么,总是贴不上来,系统提示帖子内容不得小于7bytes,我这个远超了呀
点评回复

使用道具 举报

发表于 2007-10-25 19:37:02 | 显示全部楼层
建议现找个06A的版本试试呢?
点评回复

使用道具 举报

发表于 2007-10-25 21:57:11 | 显示全部楼层
其他不清楚,OV的人好像不调7660的。
理由就是:7660在MTK上从来没调好过。
其实7660已经停产了,何必再调?
OV摄像头那么贵,服务还那么差,我们公司早就换其他厂家了。
点评回复

使用道具 举报

 楼主| 发表于 2007-10-26 09:22:20 | 显示全部楼层
还有哪些老大给些意见啊
点评回复

使用道具 举报

发表于 2007-10-26 15:15:37 | 显示全部楼层
RGB归MTK调,YUV归OV调
90度旋转可以重新做模组
点评回复

使用道具 举报

发表于 2007-10-28 12:37:05 | 显示全部楼层
既然采购了YUV摄像头,肯定用YUV的
求MTK调比求上帝还难
点评回复

使用道具 举报

 楼主| 发表于 2007-10-29 09:36:37 | 显示全部楼层
mtk的东西怎么就这么难搞啊?我也想用yuv啊,可是找了yuv patch都缺文件什么的,合并了一天才编译通过,还不知道能用不。
大家主要说的都是camera问题,对那个lcd放电影跳动的现象大家有什么想法没有啊,这个也很要命
点评回复

使用道具 举报

 楼主| 发表于 2007-10-31 16:48:57 | 显示全部楼层
已解决。
引起这个现象的原因好像是编译(到某个时候)过程非正常中断。
删除/ 和 /make 目录下的所有已~开头的文件,再make clean,重新make new通过。
感谢给我帮助和启发的所有人。
, 换新板子使用更好的电源滤波和emc设计后有很大改善,但是曝光收敛还是太慢,有时候还是存在小块橘红色光斑不能消失的情况,郁闷。
lcd播放电影时跳动分屏问题没有任何进展。
点评回复

使用道具 举报

发表于 2007-11-1 23:51:05 | 显示全部楼层
wonderwon,怎么每个帖子都是这个编译问题啊,哈哈,不过还是谢谢很负责任的关注你自己发的帖,我们也有所收获[em01],对于你的问题,确实建议换个软件版本试试,或许会有新的发现
点评回复

使用道具 举报

发表于 2007-11-2 11:44:09 | 显示全部楼层
在firefox上只能回复,不能发表文章,会提示小于7个字节。

我碰到过和楼主一样的现象。摄像头花屏。怀疑是isp部分没有配置好,或者有问题。那个项目因为比较急,没时间细看,所以把照相机摄像机mp4播放器全都改成全屏的了!呵呵~

有时间要好好研究一下。
点评回复

使用道具 举报

发表于 2007-11-5 09:40:41 | 显示全部楼层
LZ这些问题也是我所疑惑的!!曝光收敛很头痛呀,响应速度也很慢,要停留好长一会,画面才会变的清晰.
点评回复

使用道具 举报

 楼主| 发表于 2007-11-6 15:34:14 | 显示全部楼层
to kof2000,我把回另一篇贴的内容错贴到这儿了,不好意思。
to tritium,感谢,原来是firefox的原因,我一直为这个奇怪。
除了曝光收敛太慢,还有就是曝光测量方面的问题,就是被preview的场景中如果有不同照度的物体的话,有的物体曝光正常,而有的物体曝光过度,这个真气人。还有就是preview场景正常,但是把手放sensor前面的话手上就有些偏红的麻点,感觉可能是白平衡但又不确定。
先前那种突然对着光照条件不同的场景时,屏幕上会出现面积形状都不定橘红色区域通过重新做板后有所改善但是还是存在,和上面的“把手放sensor前面的话手上就有些偏红的麻点”其实我认为是一个问题。
最近找了人用cct等工具调,据说是老手了,效果还是没什么变化,郁闷ing。
点评回复

使用道具 举报

 楼主| 发表于 2007-11-6 15:49:24 | 显示全部楼层
时序问题我后来看6226的文档了,原来该这么算 Mclk=52/(3+1)=13M, plck=52/(7+1)=6.5M>>640*480*15,RISING/FALLING EDGE应该是OUTPUT_CLK_DIVIDER的起止,而DATA_LATCH取PIXEL_CLK_DIVIDER的中值(我感觉这个东西可能并不重要)
点评回复

使用道具 举报

发表于 2007-11-7 15:17:03 | 显示全部楼层
关注学习!
点评回复

使用道具 举报

 楼主| 发表于 2007-11-13 21:03:06 | 显示全部楼层
已解决。

sensor最近别人调了好了,但是曝光收敛还是慢。还有个低级问题就是因为我一直都是用裸的主板连小板(郁闷),外加接电池,所以平时观察为了手拿方便,preview时看lcd的视角不对(我们lcd的视角本来就小),造成了sensor色彩不正的错觉。

lcd,nnd,把blockwrite中设置坐标的那几个命令用dma方式发送就好了,无语。
因为我是才摸mtk,觉得发几个命令字没必要大炮打苍蝇,且看到已有的lcd驱动中也有不用dma的,所以完全没怀疑过这个没道理的地方,得有经验的熟手提示才知晓,气死王老五哦。
点评回复

使用道具 举报

发表于 2007-12-1 00:46:24 | 显示全部楼层
我想跟各位說明一下
當sensor output選用RAW時  sensor這端是無法做任何處理的
所有的影像調校 都被須靠後端的ISP來進行 這一點其實從sensor的function block中就可以清楚的看出來

但問題是  MTK並沒有ISP  她是透過軟體來模擬ISP的功能 在其ARM based的 CPU中來處理
所以效果當然不佳
對任何sensor廠來說 fixed pattern noise與其製程有密切的關係 所以每家sensor廠可以針對其製程來改善  同時sensor的許多特性 也是跟製程息息相關  這才是所有的sensor都開發自有的ISP

強烈建議各位 選用 sensor的ISP  效果比MTK的好太多了
点评回复

使用道具 举报

发表于 2007-12-3 22:27:25 | 显示全部楼层
chiashow 看来是OV的工程师了,呵呵,请多指教[em01][em01]
点评回复

使用道具 举报

发表于 2007-12-6 09:22:12 | 显示全部楼层
好贴,关注中..............
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-16 03:20 , Processed in 0.050642 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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