linuxlcd驱动分析

linuxlcd驱动分析

ID:44416566

大小:118.00 KB

页数:10页

时间:2019-10-21

linuxlcd驱动分析_第1页
linuxlcd驱动分析_第2页
linuxlcd驱动分析_第3页
linuxlcd驱动分析_第4页
linuxlcd驱动分析_第5页
资源描述:

《linuxlcd驱动分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Linuxframbuffer设备总结主要内容:本文详细描述怎样编写linuxframbufferLCD驱动程序1.LCD驱动/设备/控制器2.linuxframbuffer驱动2」为什么要用frambuffer?2.2什么是frambuffer设备?2.3怎样编Vjframbuffer驱动程序?3.linuxframbuffer驱动源码分析3.1fb.h3.2fbmen.c4.LCD控制器驱动程序结构4.1为led显存分配内存4.2实现fb_ops功能函数1.LCD驱动/设备/控制器除了LCD设备的datasheet,还有两个

2、关于LCD的非常不错的书,并且他们都是中文的。一本叫:《液晶显示技术》,另外一本叫《液晶显示器件》。这两本书详细介绍了LCD的知识,包括对硬件的操作,LCD的底层编程等。这两本书对设计LCD模块和底层编程都很冇帮助。2.linuxframbuffer驱动2.1为什么要用frambuffer?如呆我们的系统要用GUI(图形界而接口),比如minigui,MicroWindows.这时LCD设备驱动程序就应该编写成frambuffer接口,而不是编写成仅仅操作底层的LCD控制器接口。2.2什么是frambuffer设备?frambu

3、ffer设备层是对图像设备的一种抽象,它代表了视频硬件的帧缓存,使得应用程序通过定义好的接口就可以访问硬件。所以应用程序不需要考虑底层的(寄存器级)的操作。应用程序对设备文件的访问一般在/dev口录,如/dev/fb*o更多关于frambuffer设备的详细信息请阅读内核文档:linux/Documentation/fb/fi'amebuffe匚txtandlinux/Documentation/fb/interal.txt2.3怎样编写frambuffer驱动程序?关于如何编写frambuffer设备驱动,冇很多参考资料。你可

4、以在/linux-fbdev.sourceforge.net/HOWTO/index.html网站上阅读“LinuxFramebufferDriverWritingHOWTO”。但是我认为这篇文章过于简短。所以分析内核相关部分的源码才是王道。3.linuxframbuffer驱动源码分析linux屮frambuffer接口的所有功能实现都包括在下而两个文件屮1)linux/include/linux/fb.h2)linux/drivers/video/fbmem.c下而详细分析这两个文件:3.1fb.h所有frambuffer重

5、要的结构体都定义在这个文件中。下面逐个分析他们:1)fbvarscreeninfb这个结构用來描述一个显卡口J以被设置的特性,在fbvarscreeninfo结构体里冇我们设备需要的,比如分辨率等信息。structfb_var_screeninfd{_u32xres;/*_u32yres;u32xresvirtual;_u32yres_virtual;_u32xoffset;_u32yoffset;视口水平分辨率*//*虚拟屏幕水平分辨率*//*偏移视口与虚拟屏幕水平分辨率偏移*/_u32bits_per_pixel;_u32g

6、rayscale;/*像素的位数*//*灰度标志,如果为1代表是灰度*/structtb_bitfieldred;/*如杲是真彩色,这个是颜色位,如杲不是那么只冇结构的夭小重要,其他表示的信息无关紧要*/structfbbitfieldgreen;structfbbitfieldblue;structfbbitfieldtransp;/*透明度*/_u32nonstd;_u32activate;_u32height;_u32width;/*非标准颜色表示标志位*//*参照FB_ACTIVATE_**//*在内存皿址空间的反度*/

7、/*在内存地址空间的宽度*/_u32accel_flags;/*(不用了)参照fbinfo.flags*//*时序:以下所有的值单位都是pixclock,当然除了pixclock*/_u32pixclock;_u32left_margin;_u32right_margin;_u32upper_margin;_u32lower_margin;_u32hsync_len;_u32vsync_len;/*每秒像索值*//*从sync信号到显示真止的像素的时钟个数*//*从真正显示像素到sync信号的时钟个数*//*上面两个是针对列像素

8、的,这个针对行的*//*水平sync信号的长度*//*垂直sync信号的长度*/u32sync;/*参照FB_SYNC_**/_u32vmode;_u32rotate;/*参照FBVMODE**//*anglewerotatecounterclockwise*/

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。