资源简介
Android下MTK平台驱动FT6336U电容触摸屏参考代码资料,已调试OK,只支持单点触摸,多用在手环 手表等小显示应用上,这种一般用的是Cortex-M0系列的芯片。可以直接参考里面的代码。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include “tpd_custom_fts.h“
#include “focaltech_ctl.h“
#include “focaltech_ex_fun.h“
#include
extern u8 *I2CDMABuf_va ;
extern volatile u32 I2CDMABuf_pa;
static int ft_rw_iic_drv_major = FT_RW_IIC_DRV_MAJOR;
struct ft_rw_i2c_dev
{
struct cdev cdev;
struct semaphore ft_rw_i2c_sem;
struct i2c_client *client;
};
struct ft_rw_i2c_dev *ft_rw_i2c_dev_tt;
static struct class *fts_class;
static int ft_rw_iic_drv_myread(struct i2c_client *client u8 *buf int length)
{
int ret = 0;
ret = fts_i2c_Read(client NULL 0 buf length);
if(ret<0)
dev_err(&client->dev “%s:IIC Read failed\n“
__func__);
return ret;
}
static int ft_rw_iic_drv_mywrite(struct i2c_client *client u8 *buf int length)
{
int ret = 0;
ret = fts_i2c_Write(client buf length);
if(ret<0)
dev_err(&client->dev “%s:IIC Write failed\n“
__func__);
return ret;
}
static int ft_rw_iic_drv_RDWR(struct i2c_client *client unsigned long arg)
{
struct ft_rw_i2c_queue i2c_rw_queue;
u8 __user **data_ptrs;
struct ft_rw_i2c * i2c_rw_msg;
int ret = 0;
int i;
if (!access_ok(VERIFY_READ (struct ft_rw_i2c_queue *)arg sizeof(struct ft_rw_i2c_queue)))
return -EFAULT;
if (copy_from_user(&i2c_rw_queue
(struct ft_rw_i2c_queue *)arg
sizeof(struct ft_rw_i2c_queue)))
return -EFAULT;
if (i2c_rw_queue.queuenum > FT_I2C_RDWR_MAX_QUEUE)
return -EINVAL;
i2c_rw_msg = (struct ft_rw_i2c*)
kmalloc(i2c_rw_queue.queuenum *sizeof(struct ft_rw_i2c)
GFP_KERNEL);
if (!i2c_rw_msg)
return -ENOMEM;
if (copy_from_user(i2c_rw_msg i2c_rw_queue.i2c_queue
i2c_rw_queue.queuenum*sizeof(struct ft_rw_i2c))) {
kfree(i2c_rw_msg);
return -EFAULT;
}
data_ptrs = kmalloc(i2c_rw_queue.queuenum * sizeof(u8 __user *) GFP_KERNEL);
if (data_ptrs == NULL) {
kfree(i2c_rw_msg);
return -ENOMEM;
}
ret = 0;
for (i=0; i< i2c_rw_queue.queuenum; i++) {
if ((i2c_rw_msg[i].length > 8192)||
(i2c_rw_msg[i].flag & I2C_M_RECV_LEN)) {
ret = -EINVAL;
break;
}
data_ptrs[i] = (u8 __user *)i2c_rw_msg[i].buf;
i2c_rw_msg[i].buf = kmalloc(i2c_rw_msg[i].length GFP_KERNEL);
if (i2c_rw_msg[i].buf == NULL) {
ret = -ENOMEM;
break;
}
if (copy_from_user(i2c_rw_msg[i].b
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-10-12 14:46 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\
文件 8337 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\focaltech_ctl.c
文件 911 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\focaltech_ctl.h
文件 33977 2014-10-14 12:45 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\focaltech_driver.c
文件 33821 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\focaltech_ex_fun.c
文件 1770 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\focaltech_ex_fun.h
文件 27986 2014-07-02 16:28 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\ft_gesture_lib.a_shipped
文件 374 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\ft_gesture_lib.h
文件 666 2014-09-04 18:54 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\Makefile
文件 5413 2014-10-10 19:35 Android下MTK平台驱动(FT6X36_MTK6571 沃特沃德已调试通过)\tpd_custom_fts.h
相关资源
- android-sdk-NDK21.0.rar
- Android下雪特效
- Android账户管理课程设计源码
- Android自定义虚拟摇杆,虚拟四分按盘
- android手机共享GPS到一个IP端口或蓝牙
- 一个轻量级的Android记账app
- 通过USB进行PC端和Android的数据交互
- Android动态导航栏的代码实现
- Android 反动态调试
- Android 开发教程全集(共72讲)
- 安卓航班Android开发经典教程大总结
- android使用signalR
- android 物体移动demo
- Android中内容观察者的使用---- Content
- Android自定义组合控件:UIScrollLayout支
- Android—DEMO.txt
- Android BLE 官方DEMO
- iperf for Android
- android 滚动字幕跑马灯效果
- Android简单输入法 源码
- AAndriodCode.zip
- pythonforandroid_r4.apk
- Android使用的libjpeg库文件
- 腾讯2016安全比赛第一题
- Android 提高进程优先级 不被自动销毁
- android-mail.jar
- android 源码 自己设计简易的购物框架
- android围棋源码
- Android用户登录
- android 连连看 源码
评论
共有 条评论