📄 irkey.h
字号:
/******************************************************************************\
Project Version: MTKCARDVD()
********************************************************************************
Filename: Key.c
Author: Alan chan
Company: CoreTek/ACT Company
********************************************************************************
File Version: 1.01
File Created: July 2007
Compiled Using: keil uVision2 Version 2.23
********************************************************************************
Files Required:
********************************************************************************
File Description:
********************************************************************************
File History:
--------------------------------------------------------------------------------
Date Name Description
--------------------------------------------------------------------------------
Mar. 2007 Alan chan File Created
\******************************************************************************/
#ifndef _IRKEY_C_
#define _IRKEY_C_
#ifdef _MAIN_
#define EXTERN
#else
#define EXTERN extern
#endif
#define REMOTE_TIMEOUT 2
#define IR_NONE 0xFF
#define IR_IGNORE 0xFE
enum
{
#ifdef MARTIN_KEY_FUNCTION
/// ir_num1 -ir_num99 ==0x01-0x63; //
IR_NUM0=0x00,
IR_NUM1=0x01,
IR_NUM2=0x02,
IR_NUM3=0x03,
IR_NUM4=0x04,
IR_NUM5=0x05,
IR_NUM6=0x06,
IR_NUM7=0x07,
IR_NUM8=0x08,
IR_NUM9=0x09,
//IR_NUM10 - IR_NUM99 (0x0a -0x63) undefine
IR_RIGHT=0x76,
IR_LEFT=0x77,
IR_AUDIO=0x78,
IR_MUTE=0x79,
IR_SEL=0x7a,
IR_STEP=0x7b,
IR_RESET=0x7c,
IR_ENTER=0x7d,
IR_FINE_UP=0x82, //IR_FF=0x70,
IR_FINE_DOWN=0x83, //IR_FR=0x71,
IR_MANUAL_UP=0x84, //IR_NEXT=0x72,
IR_MANUAL_DOWN=0x85, //IR_PREV=0x73,
IR_CHANNEL_UP=0x86, //IR_UP=0x74,
IR_CHANNEL_DOWN=0x87, //IR_DOWN=0x75,
IR_BAND=0x88,
IR_SWAP=0x89,
IR_SYSTEM=0x8a,
IR_AUTO_SCAN=0x8b,
IR_SKIP=0x8c,
IR_STOP=0x8d,
IR_TV_SOUND=0x8e,
IR_TV_VERSION=0x8f,
IR_TV_INIT=0x90,
IR_TV_DEFAULT=0x91,
IR_TV_RETURN=0x92, //07Oct08
IR_KEY_MAX=0x93,
////// Below are all null and void. /////
IR_PLAY_PAUSE,
IR_SETUP,
IR_DISPLAY,
IR_RANDOM,
IR_PAL_NTSC,
IR_PROGRAM,
IR_CLEAR,
IR_EJECT,
IR_TITLE_MENU,
IR_ZOOM,
IR_SUB_TITLE,
IR_PBC,
IR_GOTO,
IR_REPEAT,
IR_POWER,
IR_TITLE,
IR_ANGLE,
IR_A2B,
IR_ROOT_MENU,
IR_VOLUME_UP,
IR_VOLUME_DOWN,
IR_FF,
IR_FR,
IR_NEXT,
IR_PREV,
IR_UP,
IR_DOWN,
// other IR define
IR_MODE,
IR_DVD,
IR_USB,
IR_SD,
IR_ENC_ENTER,
IR_EQ,
IR_CLOCK,
// not pass to dvd IR define
IR_ST,
IR_LONGPUSH,
IR_MEM1,
IR_MEM2,
IR_MEM3,
IR_MEM4,
IR_MEM5,
IR_MEM6,
IR_LOUD
#else
IR_NUM1=0x01,
IR_NUM2,
IR_NUM3,
IR_NUM4,
IR_NUM5,
IR_NUM6,
IR_NUM7,
IR_NUM8,
IR_NUM9,
IR_NUM0,
IR_STOP=0x0c,
IR_FF=0x0f,
IR_FR=0x10,
IR_STEP=0x12,
IR_PLAY_PAUSE,
IR_NEXT=0x15,
IR_RESET=0x19,
IR_MUTE,
IR_UP,
IR_DOWN,
IR_SETUP,
IR_PREV,
IR_DISPLAY=0x26,
IR_RANDOM=0x2a,
IR_PAL_NTSC,
IR_PROGRAM=0x3e,
IR_CLEAR,
IR_EJECT,
IR_TITLE_MENU,
IR_ZOOM=0x43,
IR_SUB_TITLE,
IR_SEL,
IR_RIGHT,
IR_LEFT=0x48,
IR_PBC=0x4a,
IR_GOTO,
IR_REPEAT,
IR_POWER=0x4d,
IR_ENTER=0x50,
IR_TITLE,
IR_AUDIO=0x53,
IR_ANGLE=0x55,
IR_A2B=0x62,
IR_ROOT_MENU,
IR_VOLUME_UP,
IR_VOLUME_DOWN,
// other IR define
IR_MODE=0x74,
IR_DVD,
IR_USB,
IR_SD,
IR_ENC_ENTER,
IR_EQ,
IR_CLOCK,
// not pass to dvd IR define
IR_ST,
IR_LONGPUSH,
IR_MEM1=0x80,
IR_MEM2,
IR_MEM3,
IR_MEM4,
IR_MEM5,
IR_MEM6,
IR_LOUD
#endif
};
#ifdef MARTIN_KEY_FUNCTION
#define IR_NUM_KEY(bKey) ((bKey>=0x01)&&((bKey<=0x63))) // 1-99
#endif
//martin 14May08 #define IR_BAND IR_ENTER
#define IR_AST IR_PBC
// Komec remote control
// power MUTE Setup Eject
// 0x46 0x57 0x51 0x59
//
// 1 2 3 Vol up
// 0x5a 0x47 0x50 0x58
//
// 4 5 6 Vol down
// 0x02 0x05 0x54 0x0a
//
// 7 8 9 0
// 0x1e 0x0e 0x1c 0x14
//
// Menu Audio PBC/AST Loud/EQ
// 0x0f 0x0c 0x1a 0x0d
//
// Disp Up Subtitle Title
// 0x13 0x10 0x12 0x11
//
// Left Play_enter/Band Right Prev
// 0x17 0x18 0x16 0x15
//
// Prog Down Angle Next
// 0x1b 0x19 0x1d 0x1f
//
// FR FF Stop Play_pause
// 0x5f 0x5e 0x5d 0x5c
//
// Slow Rdm Repeat A-B
// 0x4f 0x4e 0x4d 0x4c
//
// Zoom Sel ST/P.SPW PN/P.MENU
// 0x43 0x42 0x41 0x40
//
#define IR_CUSTOM_CODE 0x01
#define IR_CUSTOM_CODE1 0xfe
#define IR_KEY_CODE_MAX 0x60
#define IR_KEY_GAP_START 0x20
#define IR_KEY_GAP_SIZE 0x20
#define IR_KEY_TBL_SIZE (IR_KEY_CODE_MAX - IR_KEY_GAP_SIZE)
EXTERN BOOL _fgIRKeyValid;
EXTERN xdata BYTE _bPlaypostKey;
EXTERN xdata BYTE _bIR0;
EXTERN xdata BYTE _bIRKey0;
EXTERN xdata BYTE _bIRLongPush;
EXTERN xdata BYTE _bRemoteTimer;
EXTERN xdata BYTE LongPushCount;
#ifdef _MAIN_
EXTERN code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE] =
{
#ifdef MARTIN_MCU_NO_IR
IR_NEXT,
IR_AUDIO,
#else
/* 0x00 */ IR_NONE,
/* 0x01 */ IR_NONE,
/* 0x02 */ IR_NUM4,
/* 0x03 */ IR_NONE,
/* 0x04 */ IR_NONE,
/* 0x05 */ IR_NUM5,
/* 0x06 */ IR_NONE,
/* 0x07 */ IR_NONE,
/* 0x08 */ IR_NONE,
/* 0x09 */ IR_NONE,
/* 0x0a */ IR_VOLUME_DOWN,
/* 0x0b */ IR_NONE,
/* 0x0c */ IR_AUDIO,
/* 0x0d */ IR_EQ,
/* 0x0e */ IR_NUM8,
/* 0x0f */ IR_ROOT_MENU,
/* 0x10 */ IR_UP,
/* 0x11 */ IR_TITLE,
/* 0x12 */ IR_SUB_TITLE,
/* 0x13 */ IR_DISPLAY,
/* 0x14 */ IR_NUM0,
/* 0x15 */ IR_PREV,
/* 0x16 */ IR_RIGHT,
/* 0x17 */ IR_LEFT,
/* 0x18 */ IR_ENTER, // ENTER/BAND
/* 0x19 */ IR_DOWN,
/* 0x1a */ IR_PBC, // PBC/AST
/* 0x1b */ IR_PROGRAM,
/* 0x1c */ IR_NUM9,
/* 0x1d */ IR_ANGLE,
/* 0x1e */ IR_NUM7,
/* 0x1f */ IR_NEXT,
/* 0x40 */ IR_PAL_NTSC, // PN/P.MENU
/* 0x41 */ IR_ST, // ST/P.SPW
/* 0x42 */ IR_SEL,
/* 0x43 */ IR_ZOOM,
/* 0x44 */ IR_NONE,
/* 0x45 */ IR_NONE,
/* 0x46 */ IR_MODE,
/* 0x47 */ IR_NUM2,
/* 0x48 */ IR_NONE,
/* 0x49 */ IR_MUTE,
/* 0x4a */ IR_NONE,
/* 0x4b */ IR_NONE,
/* 0x4c */ IR_A2B,
/* 0x4d */ IR_REPEAT,
/* 0x4e */ IR_RANDOM,
/* 0x4f */ IR_STEP,
/* 0x50 */ IR_NUM3,
/* 0x51 */ IR_SETUP,
/* 0x52 */ IR_NONE,
/* 0x53 */ IR_NONE,
/* 0x54 */ IR_NUM6,
/* 0x55 */ IR_NONE,
/* 0x56 */ IR_NONE,
/* 0x57 */ IR_NONE,
/* 0x58 */ IR_VOLUME_UP,
/* 0x59 */ IR_EJECT,
/* 0x5a */ IR_NUM1,
/* 0x5b */ IR_NONE,
/* 0x5c */ IR_PLAY_PAUSE,
/* 0x5d */ IR_STOP,
/* 0x5e */ IR_FF,
/* 0x5f */ IR_FR,
#endif
};
#else
EXTERN code const BYTE _pbIRKeyTbl[IR_KEY_TBL_SIZE];
#endif
extern BYTE bRemoteDetect(void);
extern void vInitIRVar(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -