FT5X06触摸屏驱动.doc

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FT5X06触摸屏驱动.doc

您还未登录!|登录|注册|帮助 CSDN首页 资讯 论坛 博客 下载 有哪些信誉好的足球投注网站 更多 CTO俱乐部 学生大本营 培训充电 移动开发 软件研发 云计算 程序员 ITeye TUP gooogleman研发实战博客.邮箱:gooogleman@ 从事2440/2416/6410/S5pv210 android+wince之手持机/游戏机/POS机等方案设计工作 目录视图 摘要视图 订阅 用开源IaaS构建自己的云——OpenStack征稿启事 ????????????????? 不用买彩票,就有408万! CSDN博客频道“移动开发之我见”主题征文活动 ??????????????? 2012CSDN网站八大职位急聘 电容屏幕触摸屏驱动——ft5406 芯片 分类: gooogleman原创S5PV210 Sate210工控板 Android 2012-05-17 00:23 536人阅读 评论(2) 收藏 举报 ——我的S5pv210 板子的电容触摸屏也是ft5406 的芯片的,已经调试通了,无意中看到下面这篇文章,很有参考价值,所以转载过来呵呵。 原文地址?/yunfly163/article/details/7388230#comments 最近刚调试好郭泰的电容触摸屏,现记录下。 ? ft5406数据手册 ---------------------------------------------------------------------------------------- cpu:s5pv210 touch ic :FT5406 ?平台:android 首先,分析下 FT5406 的基本电路接口: 基本都是通用的接口,如 I2C 接口,INT,WAKE,RST。如图: 以上可知,我们在驱动中必须定义一个中断口,来启动接收触摸数据,一个gpio脚来复位FT5406。 wake:主要靠cpu发送一个唤醒指令给FT5406。 #define pin_irq???? S5PV210_GPH0(1) #define pin_rst???? S5PV210_GPB(1) 再次,需确认FT5406的从地址,以便于I2C访问得到。这个可以根据FT5406数据手册查找到. 可知从地址高位必须为:3,低位必须根据i2ccon设定的值来确定,这点很奇怪。 我这边找到的从地址为:0x38 基本的东西确认好后,剩下的就是根据FT5406数据手册上的指令,开始写驱动了。 在此之前,我们先了解下驱动如何实现电容屏的多点触摸,其实很简单,主要需要 触摸屏IC FT5406 能够捕获多点数据,这点电容屏基本多能支持到捕获2点以上,而 FT5406 可以捕获5个触摸点,编写驱动时,只要去获取这几个点的数据,然后上报 就行。格式如图: 解释: 02h : 捕获的触摸点个数 03h- 1eh :对应每个点的x,y坐标数值。 ---------------------------------------------------------------------------------------------------------------------------------------------- 首先配置?i2c_board_info,把从地址提供过去。 //arch/arm/mach-s5pv210/mach-smdk110.c //i2c_board_infoI2C设备。这一信息用于增长新型I2C驱动的驱动模型树。对于主板,它使用i2c_register_board_info()来静态创建。对于子板,利用已知的适配器使用i2c_new_device()动态创建。 //I2C?设备创建模板 struct i2c_board_info { ??? char type[I2C_NAME_SIZE];? //芯片类型,用于初始化i2c_ ??? unsigned short flags;? //用于初始化i2c_client.flags ??? unsigned short addr;? //存储于i2c_client.addr ??? void *platform_data;? //存储于i2c_client.dev.platform_data ??? struct dev_archdata *archdata;? //拷贝至i2c_client.dev.archdata ??? int irq;? //存储于i2c_client.irq }; ?static struct i2c_board_info i2c_devs0[] __initdata = { #ifdef CONFIG_TOUCHSCREEN_CDTLCD { I2

文档评论(0)

zhoujiahao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档