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

📄 key.h

📁 用51单片机实现IR解码
💻 H
字号:
/**********************************************************************
*File		Name		:	Key.h
*Creat		Time		:	2002/02/11
*Program	Author		:	mqli
*File		Discreption	:	 
************************************************************************/
#ifndef	_KEY_R_H
#define _KEY_R_H

/*************************************************************************************************
* define the output key   Key_Code    formate
*
*
   bit7		bit6		bit5		bit4:0
    |			|		|		|
    |			|		|		|- panel key value
    |			|		|	
    |			|		|-when bit6=1   bit5 is the combitional panel key flag   0: No combitional  1:has combitional key
    |			|		   when bit6=0	   bit5:0  is the key code of IR input
    |			|
    |			|-   1: Panel Key   0: Ir key
    |
    |- 0:Single Key    1:Hold Key

   Note: 
           1.When there are two combitional panel keys, the  Key_Code will have the smaller key code, the other combitional 
               key code is saved by    Key_Code_Combition
           2.The IR key code valid range is 0x00 to 0x3F  , about 64 key.
           3.THe panel key valide range is  0x00 to 0x1F  , about 32 key.
           4.The invalid key code is 0XFF
           
   ************************************************************************************************/

//define panel key code

typedef enum{


					
					KEY_IR_0=								0x00,
					KEY_IR_1   =							       0x01,
					KEY_IR_2  =							0x02,
					KEY_IR_3    =							0x03,
					KEY_IR_4    =						0x04,
					KEY_IR_5    =							       0x05,
					KEY_IR_6   =							       0x06,
					KEY_IR_7=							0x07,
					KEY_IR_8=							       0x08,
					KEY_IR_9=							       0x09,
					KEY_IR_PAUSE=							       0x0A,
					KEY_IR_MENU=							       0x0B,
					KEY_IR_OK=						       	0x0C,
					KEY_IR_VOL_M=					       		0x0D,
					KEY_IR_PLAY=		       				0x0E,
					KEY_IR_STOP=			 				0x0F,
					
					KEY_IR_PROGRAM=							       0x10,
					KEY_IR_UP=							       0x11,
					KEY_IR_PREVIOUS  =							       0x12,
					KEY_IR_NEXT=							       0x13,
					KEY_IR_DOWN=							       0x14,
					KEY_IR_FB=							       0x15,
					KEY_IR_FF=							       0x16,
					KEY_IR_SEEK_DOWN=							       0x17,
					KEY_IR_SEEK_UP=							       0x18,
					KEY_IR_RDS_DISPLAY=							       0x19,
					KEY_IR_RDS_PTY=							       0x1A,
					KEY_IR_SLOW=							       0x1B,
					KEY_IR_MUTE=							       0x1C,
					KEY_IR_STEREO=							       0x1D,
					KEY_IR_REPEAT=							       0x1E,
					KEY_IR_POWER=							       0x1F,

					KEY_IR_VOLOUME_UP=							0x20,
					KEY_IR_VOLOUME_DOWN=						       0x21,
				       KEY_IR_=							       0x22,
				/*		KEY_IR_STOP=							       0x23,
					KEY_IR_PLAY=							       0x24,
					KEY_IR_=							       0x25,
					KEY_IR_=							       0x26,
					KEY_IR_=							       0x27,
					KEY_IR_=							       0x28,
					KEY_IR_=							       0x29,
					KEY_IR_=							       0x2A,
					KEY_IR_=							       0x2B,
					KEY_IR_=							       0x2C,
					KEY_IR_=							       0x2D,
					KEY_IR_EJECT=							       0x2E,
					KEY_IR_POWER_=							       0x2F,

					KEY_IR_MUTE=							0x33,
					KEY_IR_=							       0x31,
					KEY_IR_=							       0x32,
					KEY_IR_=							       0x33,
					KEY_IR_=							       0x34,
					KEY_IR_=							       0x35,
					KEY_IR_=							       0x36,
					KEY_IR_=							       0x37,
					KEY_IR_=							       0x38,
					KEY_IR_=							       0x39,
					KEY_IR_=							       0x3A,
					KEY_IR_=							       0x3B,
					KEY_IR_=							       0x3C,
					KEY_IR_=							       0x3D,
					KEY_IR_=							       0x3E,
					KEY_IR_=							       0x3F,
                             
                            */

                            KEY_FP_0=							0x40,
				KEY_FP_SOURCE		   	=						0x41,
				KEY_FP_VOL_DOWN	 	=		       0x42,
				KEY_FP_VOL_UP	 	=				       0x43,
				KEY_FP_RDS_DISPALY	=							       0x44,
				KEY_FP_PREVIOUS  	  	 =				       0x45,
				KEY_FP_TRACK_DOWN	   =							       0x46,
				KEY_FP_MUTE	  =							       0x47,
				KEY_FP_LCD_SELECT	    =						       0x48,
				KEY_FP_NOP1=							0x49,
				KEY_FP_SEEK_UP	  =						0x4A,
				 KEY_FP_NOP	  =					0x4B,
				KEY_FP_NOP3=							0x4C,
				KEY_FP_NOP2=						0x4D,
				KEY_FP_TRACK_UP	    =							0x4E,
				KEY_FP_PROGRAM       	=							0x4F,

					
					
					KEY_FP_BAND=								0x50,
					KEY_FP_1=							       0x51,
					KEY_FP_2=							       0x52,
					KEY_FP_3=							       0x53,
					KEY_FP_4=							       0x54,
					KEY_FP_5=							       0x55,
					KEY_FP_6=							       0x56,
					KEY_FP_7=							       0x57,
					KEY_FP_8=							       0x58,
					KEY_FP_9=							       0x59,
					KEY_FP_UP=							       0x5A,
					KEY_FP_DOWN=							       0x5B,
					KEY_FP_LEFT=							       0x5C,
					KEY_FP_RIGHT=							       0x5D,
					KEY_FP_ENTER=							       0x5E,
					KEY_FP_SETUP=							       0x5F,

                                  /*combination with other key, the other key is store in Key_Code_Combination*/
					KEY_FP_NEXT_COMBINATION=							0x60,
					KEY_FP_PREVIOS_COMBINATION=							       0x61,
					KEY_FP_M1_COMBINATION=							       0x62,
					KEY_FP_M2_COMBINATION=							       0x63,
					KEY_FP_M3_COMBINATION=							       0x64,
					KEY_FP_M4_COMBINATION=							       0x65,
					KEY_FP_M5_COMBINATION=							       0x66,
					KEY_FP_M6_COMBINATION=							       0x67,
					KEY_FP_STEREO_COMBINATION=							       0x68,
					KEY_FP_MUTE_COMBINATION=							       0x69,
					KEY_FP_TRACK_UP_COMBINATION=							       0x6A,
					KEY_FP_TRACK_DOWN_COMBINATION=							       0x6B,
					KEY_FP_AUTO_COMBINATION=							       0x6C,
					KEY_FP_BAND_COMBINATION=							       0x6D,
					KEY_FP_PROGRAM_COMBINATION=							       0x6E,
					KEY_FP_POWER_COMBINATION=							       0x6F,
					
					KEY_FP_0_COMBINATION=							0x70,
					KEY_FP_1_COMBINATION=							       0x71,
					KEY_FP_2_COMBINATION=							       0x72,
					KEY_FP_3_COMBINATION=							       0x73,
					KEY_FP_4_COMBINATION=							       0x74,
					KEY_FP_5_COMBINATION=							       0x75,
					KEY_FP_6_COMBINATION=							       0x76,
					KEY_FP_7_COMBINATION=							       0x77,
					KEY_FP_8_COMBINATION=							       0x78,
					KEY_FP_9_COMBINATION=							       0x79,
					KEY_FP_UP_COMBINATION=							       0x7A,
					KEY_FP_DOWN_COMBINATION=							       0x7B,
					KEY_FP_LEFT_COMBINATION=							       0x7C,
					KEY_FP_RIGHT_COMBINATION=							       0x7D,
					KEY_FP_ENTER_COMBINATION=							       0x7E,
					KEY_FP_SETUP_COMBINATION=							       0x7F,

                                   /*Ir key hold*/
                                   KEY_IR_MUTE_HOLD=								0x80,
					KEY_IR_NEXT_HOLD=							       0x81,
					KEY_IR_PREVIOUS_HOLD=							0x82,
					KEY_IR_TRACK_UP_HOLD=							0x83,
					KEY_IR_TRACK_DOWN_HOLD=						0x84,
					KEY_IR_STOP_HOLD=							       0x85,
					KEY_IR_PLAY_HOLD=							       0x86,
					KEY_IR_STEREO_HOLD=							0x87,
					KEY_IR_M1_HOLD=							       0x88,
					KEY_IR_M2_HOLD=							       0x89,
					KEY_IR_M3_HOLD=							       0x8A,
					KEY_IR_M4_HOLD=							       0x8B,
					KEY_IR_M5_HOLD=						       	0x8C,
					KEY_IR_M6_HOLD=					       		0x8D,
					KEY_IR_AUTO_HOLD=		       				0x8E,
					KEY_IR_BAND_HOLD=			 				0x8F,
					/*
					KEY_IR_PLAY_HOLD=							       0x90,
					KEY_IR_PAUSE_HOLD=							       0x91,
					KEY_IR_SETUP_HOLD=							       0x92,
					KEY_IR_TUNER_HOLD=							       0x93,
					KEY_IR__HOLD=							       0x94,
					KEY_IR__HOLD=							       0x95,
					KEY_IR__HOLD=							       0x96,
					KEY_IR__HOLD=							       0x97,
					KEY_IR__HOLD=							       0x98,
					KEY_IR__HOLD=							       0x99,
					KEY_IR__HOLD=							       0x9A,
					KEY_IR__HOLD=							       0x9B,
					KEY_IR__HOLD=							       0x9C,
					KEY_IR__HOLD=							       0x9D,
					KEY_IR__HOLD=							       0x9E,
					KEY_IR__HOLD=							       0x9F,
					
					KEY_IR_MUTE_HOLD=							0xA0,
					KEY_IR__HOLD=							       0xA1,
					KEY_IR__HOLD=							       0xA2,
					KEY_IR__HOLD=							       0xA3,
					KEY_IR__HOLD=							       0xA4,
					KEY_IR__HOLD=							       0xA5,
					KEY_IR__HOLD=							       0xA6,
					KEY_IR__HOLD=							       0xA7,
					KEY_IR__HOLD=							       0xA8,
					KEY_IR__HOLD=							       0xA9,
					KEY_IR__HOLD=							       0xAA,
					KEY_IR__HOLD=							       0xAB,
					KEY_IR__HOLD=							       0xAC,
					KEY_IR__HOLD=							       0xAD,
					KEY_IR__HOLD=							       0xAE,
					KEY_IR__HOLD=							       0xAF,

					KEY_IR_MUTE_HOLD=							0xB3,
					KEY_IR__HOLD=							       0xB1,
					KEY_IR__HOLD=							       0xB2,
					KEY_IR__HOLD=							       0xB3,
					KEY_IR__HOLD=							       0xB4,
					KEY_IR__HOLD=							       0xB5,
					KEY_IR__HOLD=							       0xB6,
					KEY_IR__HOLD=							       0xB7,
					KEY_IR__HOLD=							       0xB8,
					KEY_IR__HOLD=							       0xB9,
					KEY_IR__HOLD=							       0xBA,
					KEY_IR__HOLD=							       0xBB,
					KEY_IR__HOLD=							       0xBC,
					KEY_IR__HOLD=							       0xBD,
					KEY_IR__HOLD=							       0xBE,
					KEY_IR__HOLD=							       0xBF,
                                    */

                                 /* panel key hold*/
					KEY_FP_NEXT_HOLD=							0xC0,
					KEY_FP_PREVIOS_HOLD=							       0xC1,
					KEY_FP_M1_HOLD=							       0xC2,
					KEY_FP_M2_HOLD=							       0xC3,
					KEY_FP_M3_HOLD=							       0xC4,
					KEY_FP_M4_HOLD=							       0xC5,
					KEY_FP_M5_HOLD=							       0xC6,
					KEY_FP_M6_HOLD=							       0xC7,
					KEY_FP_STEREO_HOLD=							       0xC8,
					KEY_FP_MUTE_HOLD=							       0xC9,
					KEY_FP_TRACK_UP_HOLD=							       0xCA,
					KEY_FP_TRACK_DOWN_HOLD=							       0xCB,
					KEY_FP_TUNER_AREA_HOLD =							       0xCC,
					KEY_FP_BAND_HOLD=							       0xCD,
					KEY_FP_AUTO_HOLD=							       0xCE,
					 KEY_FP_PROGRAM_HOLD=							       0xCF,
					
                                   KEY_FP_0_HOLD=							0xD0,
					KEY_FP_1_HOLD=							       0xD1,
					KEY_FP_2_HOLD=							       0xD2,
					KEY_FP_3_HOLD=							       0xD3,
					KEY_FP_4_HOLD=							       0xD4,
					KEY_FP_5_HOLD=							       0xD5,
					KEY_FP_6_HOLD=							       0xD6,
					KEY_FP_7_HOLD=							       0xD7,
					KEY_FP_8_HOLD=							       0xD8,
					KEY_FP_9_HOLD=							       0xD9,
					KEY_FP_UP_HOLD=							       0xDA,
					KEY_FP_DOWN_HOLD=							       0xDB,
					KEY_FP_LEFT_HOLD=							       0xDC,
					KEY_FP_RIGHT_HOLD=							       0xDD,
					KEY_FP_ENTER_HOLD=							       0xDE,
					KEY_FP_SETUP_HOLD=							       0xDF,
                                   
                                   /*combination with other key and hold, the other key is store in Key_Code_Combination*/
					KEY_FP_NEXT_HOLD_COMBINATION=							0xE0,
					KEY_FP_PREVIOS_HOLD_COMBINATION=							       0xE1,
					KEY_FP_M1_HOLD_COMBINATION=							       0xE2,
					KEY_FP_M2_HOLD_COMBINATION=							       0xE3,
					KEY_FP_M3_HOLD_COMBINATION=							       0xE4,
					KEY_FP_M4_HOLD_COMBINATION=							       0xE5,
					KEY_FP_M5_HOLD_COMBINATION=							       0xE6,
					KEY_FP_M6_HOLD_COMBINATION=							       0xE7,
					KEY_FP_STEREO_HOLD_COMBINATION=							       0xE8,
					KEY_FP_MUTE_HOLD_COMBINATION=							       0xE9,
					KEY_FP_TRACK_UP_HOLD_COMBINATION=							       0xEA,
					KEY_FP_TRACK_DOWN_HOLD_COMBINATION=							       0xEB,
					KEY_FP_AUTO_HOLD_COMBINATION=							       0xEC,
					KEY_FP_BAND_HOLD_COMBINATION=							       0xED,
					KEY_FP_PROGRAM_HOLD_COMBINATION=							       0xEE,
					KEY_FP_POWER_HOLD_COMBINATION=							       0xEF,
					
					KEY_VIRTUAL_0=								0xF0,
					KEY_VIRTUAL_1=							       0xF1,
					KEY_VIRTUAL_2=							       0xF2,
					KEY_VIRTUAL_3=							       0xF3,
					KEY_VIRTUAL_4=							       0xF4,
					KEY_VIRTUAL_5=							       0xF5,
					KEY_VIRTUAL_6=							       0xF6,
					KEY_VIRTUAL_7=							       0xF7,
					KEY_VIRTUAL_8=							       0xF8,
					KEY_VIRTUAL_9=							       0xF9,
					KEY_VIRTUAL_10=							       0xFA,
					KEY_VIRTUAL_11=							       0xFB,
					KEY_VIRTUAL_12=							       0xFC,
					KEY_VIRTUAL_13=							       0xFD,
					KEY_VIRTUAL_14=							       0xFE,
                           		INVALID_KEY=							              0xFF

};



#endif

⌨️ 快捷键说明

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