紧急求助,linux下关于LCD写屏问题
在ARM上使用型号LTV350QV的320*240的LCD,这个LCD是24位数据的。编译内核时LCD驱动选择了24BBP。开机可以看到开机LOGO。
但是编程写屏的时候出现问题了。
编程就是打开/dev/fb0,mmap出一个指针地址。可以看到FB信息中bits_per_pixel是32
,这样一个像素是占了4个字节。但是经过测试往某个像素写大于0x007eff94的数时就会
屏幕就会花屏,有时候是半个屏在闪白,有时候是整个屏慢慢变白。
如果写小于0x007eff94的数时就没有问题,但是这样不能表现全部颜色啊。奇怪是可以
有开机画面,我用cp /dev/fb0 f.dat的方式把开机画面保存下来。用UE开其内容,里面
的像素数据最大的是0x00FCFCFC.
用cp f.dat /dev/fb0是可以把开机图像写回屏幕的。
这样的情况究竟是什么原因啊?是驱动问题吗?
向各位求救了。 开机能看到真彩的开机画面说明loader程序中初始化LCD的代码正确,你自己编程写屏时花屏,说明你重新对LCD进行了配置,检测一下与LCD相关的代码看看.
页:
[1]