Linux中的LCD驱动程序设计
一块LCD屏显示图像不但需要LCD驱动器,还需要LCD控制器,帧缓冲设备对应的设备文件为/dev/fb*,如果系统有多个显卡,Linux还可支持多个帧缓冲设备,最多32个。
示例演示
1、 清除LCD
dd if=/dev/zeroof = /dev/fb0 bs=240 count=320
2、 运行应用程序
或者
1、 清除lcd
2、 cat 7.bmp >/dev/fb0
linux内核使用structfb_info来描述帧缓冲设备
struct fb_info{
structfb_var_screeninfo var;//可变参数
structfb_fix_screeninfo fix;//固定参数
struct fb_ops *fops;//帧缓冲操作
}
设备注册
intregister_frambuffer(struct fb_info *fb_info)
设备注销
intunregister_frambuffer(struct fb_info *fb_info)
触摸屏驱动设计
触摸屏分维持电阻式、电容式、声表面波式和红外线扫描等。
S3c2440触摸屏控制器有两种处理方式
1、 X/Y位置分别转换模式
2、 X/Y位置自动转换模式
工作流程
1、 选择控制器处理模式
2、 设置触摸屏等待中断模式(INT_TC)
3、 中断触发,控制模式有效(启动ADC中断)
4、 获取X/Y值,返回等待中断
本文介绍Linux中LCD驱动程序的设计原理,包括帧缓冲设备的注册与注销过程,以及如何通过帧缓冲设备文件实现LCD的显示控制。此外,还探讨了触摸屏的工作流程和不同类型的触摸屏控制器。
5801

被折叠的 条评论
为什么被折叠?



