- 5
- 0
- 约1.24万字
- 约 9页
- 2016-11-28 发布于河南
- 举报
linux LCD驱动分析
Linux frambuffer设备总结
主要内容:
本文详细描述怎样编写linux frambuffer LCD 驱动程序
1. LCD 驱动/设备/控制器
2. linux frambuffer 驱动
2.1 为什么要用frambuffer?
2.2 什么是frambuffer设备?
2.3 怎样编写frambuffer驱动程序?
3. linux frambuffer 驱动源码分析
3.1 fb.h
3.2 fbmen.c
4. LCD 控制器驱动程序结构
4.1 为lcd显存分配内存
4.2 实现 fb_ops 功能函数
1.LCD 驱动/设备/控制器
除了LCD设备的datasheet,还有两个关于LCD的非常不错的书,并且他们都是中文的。一本叫:《液晶显示技术》,另外一本叫《液晶显示器件》。这两本书详细介绍了LCD的知识,包括对硬件的操作,LCD的底层编程等。这两本书对设计LCD模块和底层编程都很有帮助。
2. linux frambuffer 驱动
2.1 为什么要用frambuffer?
如果我们的系统要用GUI(图形界面接口),比如minigui,MicroWindows.这时LCD设备驱动程序就应该编写成frambuffer接口,而不是编写成仅仅操作底层的LCD控制器接口。
2.2 什么是frambuffer设备?
frambuffer设备层是对图像设备的一种抽象,它代表了视频硬件的帧缓存,使得应用程序通过定义好的接口就可以访问硬件。所以应用程序不需要考虑底层的(寄存器级)的操作。应用程序对设备文件的访问一般在
/dev 目录,如 /dev/fb*。更多关于frambuffer设备的详细信息请阅读内核文档:linux /Documentation /fb /framebuffer.txt and linux /Documentation /fb /interal.txt
2.3 怎样编写frambuffer驱动程序?
关于如何编写frambuffer设备驱动,有很多参考资料。你可以在/linux-fbdev.sourceforge.net /HOWTO /index.html网站上阅读“Linux Frame buffer Driver Writing HOWTO”。
但是我认为这篇文章过于简短。所以分析内核相关部分的源码才是王道。
3.linux frambuffer 驱动源码分析
linux中frambuffer接口的所有功能实现都包括在下面两个文件中
1) linux/include/linux/fb.h
2) linux/drivers/video/fbmem.c
下面详细分析这两个文件:
3.1 fb.h
所有frambuffer重要的结构体都定义在这个文件中。下面逐个分析他们:
1) fb_var_screeninfo
这个结构用来描述一个显卡可以被设置的特性,在fb_var_screeninfo结构体里有我们设备需要的,比如分辨率等信息。
struct fb_var_screeninfo {
__u32 xres; /* 视口水平分辨率 */
__u32 yres;
__u32 xres_virtual; /* 虚拟屏幕水平分辨率 */
__u32 yres_virtual;
__u32 xoffset; /* 偏移视口与虚拟屏幕水平分辨率偏移 */
__u32 yoffset;
__u32 bits_per_pixel; /* 像素的位数 */
__u32 grayscale; /* 灰度标志,如果为1代表是灰度 */
struct fb_bitfield red; /* 如果是真彩色,这个是颜色位,如果不是那么只有结构的大小重要,其他表示的信息无关紧要 */
struct fb_bitfield green;
struct fb_bitfield blue;
struct fb_bitfield transp; /* 透明度 */
__u32 nonstd; /* 非标准颜色表示标志位 */
您可能关注的文档
最近下载
- 南京大学《金融学》2018-2019学年期末试卷.docx VIP
- 食品中西地那非、他达拉非等化合物的测定.docx
- 中 山 大 学 软 件 学 院 软 件 工 程 专 业 2 0 0 8 级 (2010 秋季学期)《 S E - 3 0 4 数据库系统原理》 期 末 试 题 .docx VIP
- 2.2德国鲁尔区的产业结构变化(教学课件)-高中地理中图版(2019)选择性必修二.pptx VIP
- 储罐区安全设施(规范讲解).pdf VIP
- 2025年四上期末测试卷语文江苏.doc VIP
- 江西省宜春市2022-2022学年七年级数学上学期期末考试试题.doc VIP
- 河南省洛阳市2023-2024学年八年级上学期期末语文试题(含答案).docx VIP
- 南京大学《材料力学》2022-2023学年期末试卷.docx VIP
- 浅谈双氧水储罐区安全设施设计及储运要求.docx VIP
原创力文档

文档评论(0)