admin 管理员组文章数量: 887021
45.帧缓冲设备(Framebuffer),LCD
目录
lcd的硬件原理
framebuffer 设备
写写加深印象
lcd的硬件原理
第18章LCD设备驱动之LCD 硬件原理_xiezhi123456的博客-CSDN博客
LCD硬件原理_Linux -CSDN博客
1.LCD屏有很多个像素点,分辨率即像素的个数
2.背后有一个电子枪,在像素时钟信号CLK的驱动下从左往右自动打点,每一个CLK移动一个像素
3.电子枪每次打点,都会从framebuff内取相应的数据,发出不同强度红绿蓝三种光,组合成相应的颜色。每个像素点在framebuff内都有对应的数据位存放数据。framebuff大小跟屏幕一样大。
4.当电子枪打到最右边的时候,HSYNC行同步信号控制电子枪到下一行的最左边。
5.当电子枪打到最后一行最右边,VSYNC帧同步信号控制电子枪回到第一行最左边的第一个像素。
6.一行打完,在行同步信号的控制下电子枪回到最左边需要时间,回到最左边准备好开始打也需要时间。
整个屏幕打完,在帧同步信号的控制下电子枪回到第一个像素点需要时间,回到第一个像素点后开始准备打点也需要时间。
这些没有打点的时间,称为屏幕的边框黑框
framebuffer 设备
Linux的帧缓冲设备(Framebuffer)简介_daniel_新浪博客
framebuffer 设备_longjingcha110的博客-CSDN博客
15.linux-LCD层次分析(详解) - 诺谦 - 博客园
16.Linux-LCD驱动(详解) - 诺谦 - 博客园
帧缓冲(framebuffer)是Linux为显示设备提供的一个接口,把显存抽象后的一种设备。
从驱动的角度来说, fb是一个典型的字符设备,在其最顶层的文件drivers/video/fbmem.c的入口函数中,只创建了字符设备和创建类,却没有创建类下面的设备节点。
framebuffer中的fileoperations结构体中有设备的打开、读写、IOctrl等函数接口,里面主要是对fb_info结构体进行操作。
fb_info结构体就是对具体硬件设备的描述,需要用户根据实际的硬件进行注册设置,注册时fb_info结构体会穿件设备节点
显然要写个LCD驱动程序,需要以下4步:
1) 分配一个fb_info结构体: framebuffer_alloc();
2) 设置fb_info
3) 硬件相关的操作(设置中断,LCD时钟频率,显存地址, 配置引脚... ...)
4 注册fb_info: register_framebuffer()
本文标签: 45帧缓冲设备(Framebuffer) LCD
版权声明:本文标题:45.帧缓冲设备(Framebuffer),LCD 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1687895662h154553.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论