版块
论坛
喜欢
话题
应用
搜索
登录
注册
shuailicn的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=161757
LCD颜色显示问题,请教大家
我们现在在做一个PDA,270+windows mobile,我在bootloader里面调试LCD(480*272),现在的情况是,背光点亮了,往LCD送数时,我想让整屏都显示红色,就送0XF800(16位的,RGB565显示方式)送 for (i = 0; i ...
全文
回复
(
6
)
2007-03-29 11:39
来自版块 -
Wince 程序开发
◆
◆
表情
告诉我的粉丝
提 交
deedbox
:
你的屏是不是没有外围时序电路的!需要编程初始化的把!
(2007-04-02 10:59)
回复
microsun
:
还是好好查一下,比如FRAMEBUFFER的地址是否要对多大的地址对齐(比如一K,一M,等等), 可能还是初始化的流程吧,至少你写的这点代码就有问题: for (i = 0; i <480*272; i++) { *pDst++ = 0xF...
(2007-04-01 20:13)
回复
shuailicn
:
是Intel的PXA 270,点时钟没有问题,LCDdatasheet上的典型值为9.2Mhz(最大允许值为15Mhz),而我的是8.6M,这个是没有问题的,而且刚开始时是5.2m,我原以为问题处在这里,可是改为8.6后依然显示那么一小块区域,现在两位老兄的意思是framebuf...
(2007-03-29 20:14)
回复
rilyyu
:
楼主用的是intel的cpu吧 可以检查其他的lcd控制器初始化正确没,比如点时钟频率,bpp值等 还有像armite兄说的有可能数据送的位置不对,就是framebuffer的地址不对 看上去楼主的步骤都是没问题的,可能是由于某一个粗心的小小失误导致的
(2007-03-29 19:58)
回复
shuailicn
:
多谢armite兄了,我理解的初始化就是首先cpu时钟,LCD控制寄存器,GPIO控制寄存器,这些都与硬件图和LCDdata sheet上对应起来了,屏还是只有一小部分能够控制(全送红或全送绿蓝)如果只送一半数(240*272)那么能控制的这一部分会一条一条颜色在闪烁,也不是我所...
(2007-03-29 19:27)
回复
armite
:
首先,你只是背光点亮了,不一定确保初始化完全成功了,这个应该还要检查一下。 其次,对于16位色显示来说,应该是没有调色板这个概念吧,不过硬件数据位接错的可能还是有的。 把上面的272跟480换了位置后效果还是一样,证明你的寄存器设置没有起作用,可能是没初始化好或者你的数据送的位置...
(2007-03-29 13:25)
回复
shuailicn
加关注
写私信
0
关注
0
粉丝
11
帖子
返回顶部