📄 touchpad.h
字号:
/***************************************************************************************
****************************************************************************************
* FILE : TouchPad.h
* Description :
*
* Copyright (c) 2003~2008 by 创易电子(Design Easy). All Rights Reserved.
*
* History:
* Version Name Date Description
1.0 Wang Shaowei 2008/12/17 Initial Version (For DesignEasy LCM MCU board)
1.1 Liu Ying 2008/12/22 Comments
1.2 zha sheng 2009/1/12 For msp430
****************************************************************************************
****************************************************************************************/
#ifndef _TOUCHPAD_H_
#define _TOUCHPAD_H_
/*====================msp430设置=============================*/
#define _DESIGN_EASY_LCD_TYPE_MSP430
#ifdef _DESIGN_EASY_LCD_TYPE_MSP430
#define TP_nCS_set P2OUT|=0x01
#define TP_nCS_cle P2OUT&=0xFE
#define TP_DCLK_set P2OUT|=0x02
#define TP_DCLK_cle P2OUT&=0xFD
//#define TP_tINT_set P2OUT|=0x04
//#define TP_tINT_cle P2OUT&=0xFB
#define TP_DIN_set P2OUT|=0x08
#define TP_DIN_cle P2OUT&=0xF7
#define TP_nBUSY P2IN&0x10
#define TP_DOUT P2IN&0x20
#define TP_INT_OPEN P2IES=0xFF;P2IE|=0x04
#define TP_INT_CLOSE P2IE&=0xFB
#define true 1
#define false 0
typedef unsigned char bool;
#endif
//============================================================//
/*该部分宏,参看触摸屏控制电路芯片文档中命令时序格式的介绍*/
#define TOUCH_PANEL_START_BIT 0x80
#define TOUCH_PANEL_TEMP0 0x00
#define TOUCH_PANEL_X_PLUS 0x10
#define TOUCH_PANEL_VBAT 0x20
#define TOUCH_PANEL_Z1_POS 0x30
#define TOUCH_PANEL_Z2_POS 0x40
#define TOUCH_PANEL_Y_PLUS 0x50
#define TOUCH_PANEL_TEMP1 0x70
#define TOUCH_PANEL_ADC3 0x20
#define TOUCH_PANEL_ADC4 0x60
#define TOUCH_PANEL_12BIT_SAMPLE 0x0
#define TOUCH_PANEL_8BIT_SAMPLE 0x8
#define TOUCH_PANEL_DIFF_MODE 0x0
#define TOUCH_PANEL_SINGLE_MODE 0x4
#define TOUCH_PANEL_PWD_ENBLE 0x0
#define TOUCH_PANEL_IRQ_DISABLE 0x1
#define TOUCH_PANEL_PWD_DISABLE 0x3
#define TOUCH_PANEL_PWD_RESET 0x2
//校准坐标,用于校准时屏幕的标准坐标
#define TP_ADJUEST_POS_X1 44
#define TP_ADJUEST_POS_Y1 55
#define TP_ADJUEST_POS_X2 132
#define TP_ADJUEST_POS_Y2 165
/*定义TP driver IC 类型,便于日后替换*/
#define _DESIGN_EASY_TP_TYPE_ET2046_
#ifdef _DESIGN_EASY_TP_TYPE_ET2046_
/*坐标转化参数的默认值,可以直接使用*/
/*
AX=0B 86 AY=0A FE BX=04 9E BY=04 44
XK=00 14 XA=01 2E YK=00 0F YA=01 0B
*/
#define TOUCH_PANEL_ARG_X_K 0x14
#define TOUCH_PANEL_ARG_X_A 0x12E
#define TOUCH_PANEL_ARG_Y_K 0x0F
#define TOUCH_PANEL_ARG_Y_A 0x10B
#endif
//add your own code here
/*
bTP_adjust用于标记是否处于校准界面,
true: 处于校准界面
false: 非校准界面
bTP_adjust_count用于标记校准点个数
false:第一个
true: 第二个
*/
bool bTP_INT;
bool bTP_adjust;
bool bTP_adjust_count;
bool bTP_touch;//标记是否处在触摸过程中
/*
最近一次得到的触摸坐标,
包括中断响应中或者定时器中得到的两种情况,
都记录在这里
*/
U16 TP_X;
U16 TP_Y;
/*最近一次转换后的液晶屏坐标*/
U8 TP_to_LED_x;
U8 TP_to_LED_y;
/*一次触摸开始的坐标以及结束的坐标*/
U8 TP_start_x;
U8 TP_start_y;
U8 TP_end_x;
U8 TP_end_y;
/*触摸时,能够画图的范围*/
U8 TP_drawenable_start_x;
U8 TP_drawenable_start_y;
U8 TP_drawenable_end_x;
U8 TP_drawenable_end_y;
void tp_init(void);
void tp_read_adc(U16 * X, U16 * Y);
U8 tp_pos_adjust(void);
void tp_pos_display(void);
void tp_pos_task(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -