⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keypad.h

📁 本项目是台湾宏芯7"TFT模拟显示屏的驱动设计
💻 H
字号:
//---------------------------------------------------------------------------
// Terawins Inc. Company Confidential Strictly Private
//
// $Archive: Keypad.h $
// $Revision: 1.01 $
// $Author: jwang $
// $Date: 2002/06/18 17:24:48 $
//
// --------------------------------------------------------------------------
// >>>>>>>>>>>>>>>>>>>>>>>>> COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
// --------------------------------------------------------------------------
// Copyright 2002(c) Terawins Inc.
// This is an unpublished work.
// --------------------------------------------------------------------------

#if !defined(__KEYPAD_H__)
#define __KEYPAD_H__

#define kyPOWER		0x01
#define kyMENU		0x02   //0x20
#define kyINCREASE	0x04	//0x10
#define kyDECREASE	0x08	//0x01
#define kySOURCE	0x10
#define kyEXIT 		0x20

#define KF_TYPE_MASK	    0x80
#define KF_POLARITY_MASK    0x40
#define KF_SHIFT_DIR_MASK   0x08
#define KF_SHIFT_MASK	    0x07

#define KEY_NOT_FOUND   0xFF

typedef enum
{
	ITEM_START=0,
		SELECT_MENU, 
		SELECT_SRC,
		INCREASE,
		INCREASE1,
		DECREASE,
		DECREASE1,
	ITEM_END
}KEYEVENTS;

typedef enum
{
    KEY_NOKEY,
    KEY_PRESSED,
    KEY_TIMEOUT, 
    KEY_HOLDOFF,
    KEY_RELEASE
}KEYSTATE;

//Event
#define CLOSEMENU		0x00
#define OPENMENU		0x01
#define FUNCSELCT_IN	0x02
#define FUNCSELCT_DN    0x03
#define FUNCENTER		0x04
#define FUNCEXIT		0x05
#define FUNCADJ_IN		0x06
#define FUNCADJ_DN		0x07
#define POWERMANAGE		0x08
#define FUNCADCCAL		0x09
#define FUNCOUNT		0x0A

#define FUNCADJ_IN1		0x0B
#define FUNCADJ_DN1		0x0C
#define KEYPORT0  0
#define KEYPORT1  1
#define KEYPORT2  2
#define KEYPORT3  3

#define READ_KEYPORT0    /* */
   
#define READ_KEYPORT1    /* */
   
#define READ_KEYPORT2    /* */
   
#define READ_KEYPORT3    /* */
   
#define READ_KEYPORT     (cCurField = P2)


#define  KEYFLDS_SHIFT          1
#define  KEYS_STABLE            2
#define  RPT_COUNT              20
#define  RPT_HOLDOFF_COUNT      80
#define  NOKEYS_WAIT_LIMIT      0x8000
#define  KEY_MENU_POLL_COUNT	0xF00	//0x20	
#define  KEY_POWER_SEL			0xF00    //0x28
#define	 KEY_SEL_POLL_COUNT		0x780    //0x20	
#define  KEY_VAL_POLL_COUNT		0x480    //0x20	

//Function Defination
void 	kyKeypadInit(void);
void 	kyKeypad(void); 
bit 	kyKeypadScan(void);
void 	kyFindFunc(void);
uCHAR 	ReadPort(void);
bit 	kyFindEvent(void);
bit 	kyMENUEvent(void);
bit 	kyINCREASEEvent(void);
bit 	kyDECREASEEvent(void);
bit 	kyEXITEvent(void);
bit 	kyPOWEREvent(void);
void 	kyFindFunc(void);
bit 	kyIncPollCount(void);
bit 	IRSetupKeyCtrl(void);
bit 	IRRightKeyCtrl(void);
bit		IRUpKeyCtrl(void);
bit 	IRDownKeyCtrl(void);
bit 	IRLeftKeyCtrl(void);
bit IRSourceSelKeyCtrl(void);
bit IRNTSC_PALCtrl(void);
void IRNumKeyCtrl(uCHAR cNum);

bit IRVolDownKeyCtrl(void);
bit IRVolUpKeyCtrl(void);
//Ruby add 2004-06-07
//bit IRScaleratioCtrl(void);
bit kySCALEREvent(void);
//Ruby add 2004-06-21
#ifdef ROTATE
bit kyDismodeEvent();
#endif
///////////////////////////////////////////////
void SourceSelect(void);
void Scaling(void);
void DisplaySetTiming(uWORD wDHTotal, uWORD wDVTotal);


#endif //  __KEYPAD_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -