摘要: 本篇记录在友善之臂 mini2440 平台上挂载I2C接口触摸屏的驱动开发过程。内核版本linux-2.6.32.2, 平台是ARM9 S3C2440+I2C接口的触摸屏如上篇Linux的I2C驱动体系结构讲述http://www.lupaworld.com/273398/viewspace-204237.html要挂载新的I2C设备,需要实现3部分:1) 适配器的硬件驱动:内核中已经实现mini2440,i2c适配器驱动,可以在如下目录i2c-s3c2410.c中看到相关代码linux-2.6.32.2/drivers/i2c/busses/i2c-s3c2410.c 2) I2C 设配器的 阅读全文
posted @ 2012-11-22 13:49 莫回头 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 实例解析linux内核I2C体系结构(1)作者:刘洪涛,华清远见嵌入式学院讲师。一、概述谈到在linux系统下编写I2C驱动,目前主要有两种方式,一种是把I2C设备当作一个普通的字符设备来处理,另一种是利用linux I2C驱动体系结构来完成。下面比较下这两种驱动。第一种方法的好处(对应第二种方法的劣势)有:●思路比较直接,不需要花时间去了解linux内核中复杂的I2C子系统的操作方法。第一种方法问题(对应第二种方法的好处)有:●要求工程师不仅要对I2C设备的操作熟悉,而且要熟悉I2C的适配器操作;●要求工程师对I2C的设备器及I2C的设备操作方法都比较熟悉,最重要的是写出的程序可移植性差;● 阅读全文
posted @ 2012-11-22 13:48 莫回头 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 实例解析linux内核I2C体系结构(2)作者:刘洪涛,华清远见嵌入式学院讲师。四、在内核里写i2c设备驱动的两种方式前文介绍了利用/dev/i2c-0在应用层完成对i2c设备的操作,但很多时候我们还是习惯为i2c设备在内核层编写驱动程序。目前内核支持两种编写i2c驱动程序的方式。下面分别介绍这两种方式的实现。这里分别称这两种方式为“Adapter方式(LEGACY)”和“Probe方式(new style)”。(1) Adapter方式(LEGACY)(下面的实例代码是在2.6.27内核的pca953x.c基础上修改的,原始代码采用的是本文将要讨论的第2种方式,即Probe方式)●构建i2c 阅读全文
posted @ 2012-11-22 13:48 莫回头 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 电容触摸屏2011-01-14 15:361.Kconfig文件 增加宏定义 2.Makefile文件 增加编译处理 3.添加程序源码Touch screen remote control design document2010年11月08日 星期一 13:08Touch screen remote control design document1. 开发板环境a) Mini2440 开发板。Arm9 处理器+64M SRAM + 64M Flash +3.5’ 触摸屏LCDb) Linux 2.6.32 kernel,支持多点触摸触摸屏+Qtopia 2.2.20 图形用户界面... 阅读全文
posted @ 2012-11-22 13:39 莫回头 阅读(2964) 评论(0) 推荐(0) 编辑
摘要: 嵌入式Linux系统下I2C设备驱动程序的开发【摘要】 I2C总线是一种很通用的总线,具有简单、高效等特点,广泛应用在各种消费类电子产品及音视频设备上,在嵌入式系统的开发中也经常用到。本文分析了嵌入式 linux系统中I2C驱动程序的结构,并结合一个具体的I2C时钟芯片DS1307,说明在嵌入式linux系统下开发I2C设备驱动程序的一般流程。 【关键字】I2C总线嵌入式linux驱动开发 1、I2C总线简介I2C (Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线最主要的优点就是简单性和有效性。1. 阅读全文
posted @ 2012-11-22 13:06 莫回头 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 1, module_init(ft5306_touch_init);2, static int __init ft5306_touch_init(void)a) i2c_add_driver(&ft5306_touch_driver);3, static struct i2c_driver ft5306_touch_driver(就是向系统注册一些程序,在系统规定的时机执行)a) .probe = ft5306_touch_probe,注册检测程序和一些初始化信息,检测是否准备好程序(开机时执行)b) .remove = ft5306_touch_remove,基本不执行,只在卸载c) 阅读全文
posted @ 2012-11-22 13:03 莫回头 阅读(596) 评论(0) 推荐(0) 编辑
摘要: 公告:CSDN 搜索第二版正式上线! Hadoop与大数据精彩议题发布 2000元大奖征异构开发博文 CSDN博客频道搬家功能改版正式上线! 【免费】解读海外市场营销奥秘 CSDN博客频道推出TAG功能 29内核输入子系统多点上报机制实现 分类: linux驱动 android linux 2010-06-13 17:09 2088人阅读 评论(1) 收藏 举报 电容屏被广泛使用,多点触摸机制也随之发展,可惜29内核不支持多点上报,30以后内核才支持。特此记录移植过程。1、修改include/linux/input.h[c-sharp] view plaincopyprint?Inde... 阅读全文
posted @ 2012-11-22 12:59 莫回头 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 作者:刘洪涛,华清远见嵌入式学院讲师。Android、X windows、qt等众多应用对于linux系统中键盘、鼠标、触摸屏等输入设备的支持都通过、或越来越倾向于标准的input输入子系统。因为input子系统已经完成了字符驱动的文件操作接口,所以编写驱动的核心工作是完成input系统留出的接口,工作量不大。但如果你想更灵活的应用它,就需要好好的分析下input子系统了。一、input输入子系统框架下图是input输入子系统框架,输入子系统由输入子系统核心层( Input Core ),驱动层和事件处理层(Event Handler)三部份组成。一个输入事件,如鼠标移动,键盘按键按下,joy 阅读全文
posted @ 2012-11-22 12:56 莫回头 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 本篇记录在友善之臂 mini2440 平台上挂载I2C接口触摸屏的驱动开发过程。内核版本linux-2.6.32.2, 平台是ARM9 S3C2440+I2C接口的触摸屏如上篇Linux的I2C驱动体系结构讲述http://www.lupaworld.com/273398/viewspace-204237.html要挂载新的I2C设备,需要实现3部分:1) 适配器的硬件驱动:内核中已经实现mini2440,i2c适配器驱动,可以在如下目录i2c-s3c2410.c中看到相关代码linux-2.6.32.2/drivers/i2c/busses/i2c-s3c2410.c 2) I2C 设配器的 阅读全文
posted @ 2012-11-22 12:55 莫回头 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 在创建和配置I2C 设备linux-2.6.32.2/arch/arm/mach-s3c2440/mach-mini2440.c中,应添加代码为:#include <linux/i2c.h>/*I2C touch screen devices*//*bus configuration*/static struct s3c2410_platform_i2c i2c_ts_cfg __initdata = {.flags = 0,.slave_addr = 0x02, // 7 bit address.frequency = 100*1000, // 100 kHz.sda_delay 阅读全文
posted @ 2012-11-22 12:54 莫回头 阅读(912) 评论(0) 推荐(0) 编辑
摘要: 本篇记录在友善之臂 mini2440 平台上挂载I2C接口触摸屏的驱动开发过程。内核版本linux-2.6.32.2, 平台是ARM9 S3C2440+I2C接口的触摸屏如上篇Linux的I2C驱动体系结构讲述http://www.lupaworld.com/273398/viewspace-204237.html要挂载新的I2C设备,需要实现3部分:1) 适配器的硬件驱动:内核中已经实现mini2440,i2c适配器驱动,可以在如下目录i2c-s3c2410.c中看到相关代码linux-2.6.32.2/drivers/i2c/busses/i2c-s3c2410.c 2) I2C 设配器的 阅读全文
posted @ 2012-11-22 12:21 莫回头 阅读(820) 评论(0) 推荐(0) 编辑
摘要: 首先要下载一个RamDisk的软件。用迅雷一搜就可以了包含注册机。下载以后安装运行软件选择Add点击下一步选择容量,一般32位操作系统4G内存选择1000为宜。可根据情况自己定义。这个选项不用选继续下一步这一步选择盘符以后都是默认直接点击下一步直到这个画面点击完成。以后会生成一个名称为RamDisk的盘符再打开系统设置里边的高级标签的性能设置。进入以后把虚拟内存设定到RamDisk盘,自己根据需要设置容量在点击上边系统属性图的环境变量选项。把上边临时文件文件夹路径改为内存生成磁盘盘符。然后点击确定重新启动,就可以体验飞速虚拟内存了。可以看看生成硬盘的超级速度。 阅读全文
posted @ 2012-11-22 09:14 莫回头 阅读(648) 评论(0) 推荐(0) 编辑