欢迎来到天天文库
浏览记录
ID:1209435
大小:66.00 KB
页数:24页
时间:2017-11-08
《我的触摸屏驱动源代码》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、我的触摸屏驱动源代码/*C头文件*/#include"au_types.h"#define DEVICE_NAME "tpanel"#define IRQ_1 7#define GPIO_1_PORT GPIO_1#define GPIO_1_PORT_ADDR GPIO_1_BASE//触摸屏返回值结构体typedefstruct{ uint32pressure; uint32x; uint32y;}TS_RET;//校准值结构体typedef
2、struct{ int32x; int32y;}TS_POINT;static TS_POINT TsPoint[10];#define TS_IOC_MAGIC 0xd9#define CALIBRATE _IOW(TS_IOC_MAGIC,1,sizeof(TsPoint))#define CALIBRATE_START _IOW(TS_IOC_MAGIC,2,sizeof(uint8))//以下为触摸屏控制器管脚设置#define ADS7843_CSS() writew(0xff
3、,(GPIO_1_PORT_ADDR+0x200)) //cs=1(p1.7)#define ADS7843_CSC() writew(0x00,(GPIO_1_PORT_ADDR+0x200)) //cs=0#define ADS7843_DCLKS() writew(0xff,(GPIO_1_PORT_ADDR+0x40)) //dclk=1(p1.4)#define ADS7843_DCLKC() writew(0x00,(GPIO_1_PORT_ADDR+0x40)) //dclk=0#
4、define ADS7843_DINS() writew(0xff,(GPIO_1_PORT_ADDR+0x20)) //din=1(p.3)#define ADS7843_DINC() writew(0x00,(GPIO_1_PORT_ADDR+0x20)) //din=0#define ADS7843_DOUTR() readw(GPIO_1_PORT_ADDR+0x10) //doutp1.2//ADS7843控制字 #define AIN_X 0xD4#d
5、efine AIN_Y 0x94//ADS7846控制字//#define AIN_X 0xD0 //#define AIN_Y 0x90//#define DELAY_200NS 200 //操作时序控制宏(即延时控制值)#define DELAY_200NS 400 //操作时序控制宏(即延时控制值)#define PEN_DOWN 1 //笔按下#de
6、fine PEN_UP 2 //笔抬起#define PEN_FLEETING 4 //笔拖拽#define MAX_TS_BUF 16 //最大缓冲区数#define BUF_HEAD (TsDev.buf[TsDev.head]) //取队列头值#define BUF_TAIL (TsDev.buf[TsDev.tail]) //取队列尾值#define INCBUF(x,mod) ((++(x
7、))&((mod)-1)) //位移加一#define TS_TIMER_DELAY (HZ/28) //定时时长为36ms//#define TS_TIMER_DELAY (HZ/15)#define TS_TIMER_DELAY1 (HZ/10) //定时时长为100ms/*C源代码*/#include#include#include#includ
8、e#include //printk#include //file结构#include#include#include#include#include
此文档下载收益归作者所有