?? touch.h
字號(hào):
#ifndef __TOUCH_H__
#define __TOUCH_H__
#include "sys.h"
//////////////////////////////////////////////////////////////////////////////////
//本程序只供學(xué)習(xí)使用,未經(jīng)作者許可,不得用于其它任何用途
//Mini STM32開發(fā)板
//ADS7843/7846/UH7843/7846/XPT2046/TSC2046 驅(qū)動(dòng)函數(shù)
//正點(diǎn)原子@ALIENTEK
//技術(shù)論壇:www.openedv.com
//創(chuàng)建日期:2010/6/13
//版本:V1.1
//版權(quán)所有,盜版必究。
//Copyright(C) 正點(diǎn)原子 2009-2019
//All rights reserved
//********************************************************************************
//升級(jí)說明
//V1.1 20110730
//1,對Pen_Holder增加touchtype類型,用于標(biāo)記觸屏類型.使之能支持任何觸屏.
//2,簡化了Get_Adjdata和SAVE_Adjdata兩個(gè)函數(shù).
//3,增加了觸屏校準(zhǔn)參數(shù)輸出,用于判斷觸屏好壞.
//////////////////////////////////////////////////////////////////////////////////
//按鍵狀態(tài)
#define Key_Down 0x01
#define Key_Up 0x00
//筆桿結(jié)構(gòu)體
typedef struct
{
u16 X0;//原始坐標(biāo)
u16 Y0;
u16 X; //最終/暫存坐標(biāo)
u16 Y;
u8 Key_Sta;//筆的狀態(tài)
//觸摸屏校準(zhǔn)參數(shù)
float xfac;
float yfac;
short xoff;
short yoff;
//新增的參數(shù),當(dāng)觸摸屏的左右上下完全顛倒時(shí)需要用到.
//touchtype=0的時(shí)候,適合左右為X坐標(biāo),上下為Y坐標(biāo)的TP.
//touchtype=1的時(shí)候,適合左右為Y坐標(biāo),上下為X坐標(biāo)的TP.
u8 touchtype;
}Pen_Holder;
extern Pen_Holder Pen_Point;
//與觸摸屏芯片連接引腳
#define PEN PCin(1) //PC1 INT
#define DOUT PCin(2) //PC2 MISO
#define TDIN PCout(3) //PC3 MOSI
#define TCLK PCout(0) //PC0 SCLK
#define TCS PCout(13) //PC13 CS
//ADS7843/7846/UH7843/7846/XPT2046/TSC2046 指令集
//#define CMD_RDX 0X90 //0B10010000即用差分方式讀X坐標(biāo)
//#define CMD_RDY 0XD0 //0B11010000即用差分方式讀Y坐標(biāo)
extern u8 CMD_RDX;
extern u8 CMD_RDY;
#define TEMP_RD 0XF0 //0B11110000即用差分方式讀Y坐標(biāo)
//使用保存
#define ADJ_SAVE_ENABLE
void Touch_Init(void); //初始化
u8 Read_ADS(u16 *x,u16 *y); //帶舍棄的雙方向讀取
u8 Read_ADS2(u16 *x,u16 *y); //帶加強(qiáng)濾波的雙方向坐標(biāo)讀取
u16 ADS_Read_XY(u8 xy); //帶濾波的坐標(biāo)讀取(單方向)
u16 ADS_Read_AD(u8 CMD); //讀取AD轉(zhuǎn)換值
void ADS_Write_Byte(u8 num); //向控制芯片寫入一個(gè)數(shù)據(jù)
void Drow_Touch_Point(u8 x,u16 y);//畫一個(gè)坐標(biāo)叫準(zhǔn)點(diǎn)
void Draw_Big_Point(u8 x,u16 y); //畫一個(gè)大點(diǎn)
void Touch_Adjust(void); //觸摸屏校準(zhǔn)
void Save_Adjdata(void); //保存校準(zhǔn)參數(shù)
u8 Get_Adjdata(void); //讀取校準(zhǔn)參數(shù)
void Pen_Int_Set(u8 en); //PEN中斷使能/關(guān)閉
void Convert_Pos(void); //結(jié)果轉(zhuǎn)換函數(shù)
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -