?? remote.h
字號:
#ifndef REMOTE_H
#define REMOTE_H
#define _IR_RPT_SPEED 2 //按鍵不釋放響應速度,越小越快
#define _IR_DEPRESS_TIME 10
#define _IR_KEY_DOWN 0x01
#define _IR_KEY_REPEAT 0x02
#define _IR_KEY_UP 0x04
//ICP值計算
#if F_CPU==11059200
#define ICR_SPACE_BIT0 12 //1125/92.59259259 = 12.15
#define ICR_SPACE_BIT1 24 //24.3
#define ICR_SPACE_1ST 145 //13500/92.6 145.8
#define ICR_SPACE_2ND 121 //11250/92.6 121.5
#define ICR_RUMP_MIN 339 //31450/92.6 339.66
#define ICR_RUMP_MAX 534 //49500/92.6 534.6
#define ICR_SHIFT 3 //誤差
#endif
//每個計數時間=1/(7372800/1024)=138.888us (7.37M)
//每個計數時間=1/(8000000/1024)=128us (8M)
#if F_CPU==7372800
#define ICR_SPACE_BIT0 8 //1125/138.888 = 8.1
#define ICR_SPACE_BIT1 16 //16.2
#define ICR_SPACE_1ST 97 //97.2
#define ICR_SPACE_2ND 81 //81.0
#define ICR_RUMP_MIN 226 //226.8
#define ICR_RUMP_MAX 356 //356.4
#define ICR_SHIFT 4 //誤差
#endif
#if F_CPU==8000000
#define ICR_SPACE_BIT0 8 //1125/128 = 8.7
#define ICR_SPACE_BIT1 17 //17.58
#define ICR_SPACE_1ST 105 //105.45
#define ICR_SPACE_2ND 87 //87.89
#define ICR_RUMP_MIN 246 //246.0
#define ICR_RUMP_MAX 386 //386.7
#define ICR_SHIFT 3 //誤差
#endif
//此處定義按鍵的編碼
#ifdef IR_VERSION_A
#define REMOTE_ADDR 0x80 //0x807F //遙控器用戶碼
#define IR_KEY_POWER 0x20DF //POWER
#define IR_KEY_MODE 0xA05F //MODE
#define IR_KEY_SETUP 0x629D //SETUP
#define IR_KEY_MUTE 0xE21D //MUTE
#define IR_KEY_1 0x00FF //1
#define IR_KEY_2 0x807F //2
#define IR_KEY_3 0x42BD //3
#define IR_KEY_4 0xC23D //4
#define IR_KEY_5 0x40BF //5
#define IR_KEY_6 0xC03F //6
#define IR_KEY_7 0x827D //7
#define IR_KEY_8 0x02FD //8
#define IR_KEY_9 0x609F //9
#define IR_KEY_0 0xE01F //0
#define IR_KEY_10 0xA25D //10+
#define IR_KEY_SCAN 0x22DD //SCAN
#define IR_KEY_SEEK_FWD 0xD02F //UP
#define IR_KEY_SEEK_PREV 0xC837 //DOWN
#define IR_KEY_LEFT 0x708F //LEFT
#define IR_KEY_RIGHT 0xB24D //RIGHT
#define IR_KEY_ENTER 0xF00F //ENTER
#define IR_KEY_PN 0x12ED //P/N
#define IR_KEY_PBC 0x32CD //PBC
#define IR_KEY_PLAY 0x0AF5 //PAUSE
#define IR_KEY_REP 0x6897 //REP
#define IR_KEY_BAND 0xE817 //BAND
#define IR_KEY_TITLE 0xAA55 //TITLE
#define IR_KEY_STOP 0x2AD5 //STOP
#define IR_KEY_TRAKMINUS 0x58A7 //TRAK--
#define IR_KEY_TRAKPLUS 0xD827 //TRAK++
#define IR_KEY_SEEKMINUS 0x9A65 //SEEK--
#define IR_KEY_SEEKPLUS 0x1AE5 //SEEK++
#define IR_KEY_SUBT 0x7887 //SUBT
#define IR_KEY_ANGLE 0xF807 //Angle
#define IR_KEY_AUDIO 0xBA45 //AUDIO
#define IR_KEY_ZOOM 0x3AC5 //ZOOM
#define IR_KEY_OSD 0x08F7 //OSD
#define IR_KEY_VOLMINUS 0xA857 //VOL--
#define IR_KEY_VOLPLUS 0x5AA5 //VOL++
#define IR_KEY_SLOW 0xFA05 //SLOW
#endif
#ifdef IR_VERSION_B
#define REMOTE_ADDR 0x10 //0x10EF //遙控器用戶碼
#define IR_KEY_POWER 0xD0 //POWER
#define IR_KEY_MODE 0x30 //MODE
#define IR_KEY_PLAY 0x2A //PAUSE
#define IR_KEY_MUTE 0x12 //MUTE
#define IR_KEY_BND 0x82 //BND/SYS
#define IR_KEY_EQ 0x80 //UP
#define IR_KEY_AMS 0x40 //AMS/PRT
#define IR_KEY_PN 0xC0
#define IR_KEY_STOP 0x52 //STOP
#define IR_KEY_INT 0x20
#define IR_KEY_RPT 0xA0
#define IR_KEY_RDM 0x60
#define IR_KEY_LOC 0x28
#define IR_KEY_LOU 0xE0
#define IR_KEY_VOL_UP 0x10
#define IR_KEY_STLR 0x90
#define IR_KEY_PBC 0xA8 //PBC
#define IR_KEY_SEEK_PREV 0x8A
#define IR_KEY_SEL 0x4A
#define IR_KEY_SEEK_FWD 0x00
#define IR_KEY_ESP 0xF8
#define IR_KEY_OSD 0x38
#define IR_KEY_VOL_DOWN 0xB8
#define IR_KEY_VOL_PROG 0xCA
#define IR_KEY_1 0x58 //1
#define IR_KEY_2 0x9A //2
#define IR_KEY_3 0x02 //3
#define IR_KEY_4 0x68 //4
#define IR_KEY_5 0x62 //5
#define IR_KEY_6 0x98 //6
#define IR_KEY_7 0xB0 //7
#define IR_KEY_8 0xD2 //8
#define IR_KEY_9 0xFA //9
#define IR_KEY_0 0xDA //0
#define IR_KEY_10 0xF2 //10+
#define IR_KEY_GOTO 0xEA //GOTO
#define IR_KEY_UNKNOW 0xFF
#endif
//******************************************************
#ifdef IR_VERSION_C
#define REMOTE_ADDR 0x10 //0x10EF //遙控器用戶碼
#define IR_KEY_POWER 0xD0 //POWER
#define IR_KEY_MODE 0x30 //MODE
#define IR_KEY_PLAY 0x2A //PAUSE
#define IR_KEY_MUTE 0x12 //MUTE
#define IR_KEY_BND 0x82 //BND/SYS
#define IR_KEY_SYS 0x82 //SYS/BND
#define IR_KEY_UP 0x80 //UP
#define IR_KEY_TITLE 0x40 //AMS/PRT
#define IR_KEY_TA 0x40
#define IR_KEY_SUBT 0xC0
#define IR_KEY_PTY 0xC0
#define IR_KEY_LEFT 0x52 //STOP
#define IR_KEY_ENTER 0x20
#define IR_KEY_RIGHT 0xA0
#define IR_KEY_SETUP 0x60
#define IR_KEY_AF 0x60
#define IR_KEY_STOP 0x28
#define IR_KEY_DOWN 0xE0
#define IR_KEY_ANGLE 0x10
#define IR_KEY_AB 0x10
#define IR_KEY_SLOW 0x90
#define IR_KEY_RPT 0xA8 //PBC
#define IR_KEY_AMS 0xA8
#define IR_KEY_PROG 0x8A
#define IR_KEY_STLR 0x8A
#define IR_KEY_VOL_UP 0x4A
#define IR_KEY_ZOOM 0x00
#define IR_KEY_RDM 0xF8
#define IR_KEY_LOC 0xF8
#define IR_KEY_SEEK_PREV 0x38
#define IR_KEY_SEL 0xB8
#define IR_KEY_SEEK_FWD 0xCA
#define IR_KEY_PBC 0x58 //1
#define IR_KEY_OSD 0x9A //2
#define IR_KEY_VOL_DOWN 0x02 //3
#define IR_KEY_AUDIO 0x68 //4
#define IR_KEY_1 0x62 //5
#define IR_KEY_2 0x98 //6
#define IR_KEY_3 0xB0 //7
#define IR_KEY_4 0xD2 //8
#define IR_KEY_5 0xFA //9
#define IR_KEY_6 0xDA //0
#define IR_KEY_7 0xF2 //10+
#define IR_KEY_8 0xEA //GOTO
#define IR_KEY_9 0x7A
#define IR_KEY_0 0x5A
#define IR_KEY_10 0x72
#define IR_KEY_GOTO 0x6A
#define IR_KEY_EJ 0xFF
#define IR_KEY_DSP 0xFF
#define IR_KEY_UNKNOW 0xFF
#elif defined(IR_VERSION_D)
#define REMOTE_ADDR 0x10 //0x10EF //遙控器用戶碼
#define IR_KEY_POWER 0xD0 //POWER
#define IR_KEY_MODE 0x30 //MODE
#define IR_KEY_PLAY 0x2A //PAUSE
#define IR_KEY_MUTE 0x12 //MUTE
#define IR_KEY_BND 0x82 //BND
#define IR_KEY_EQ 0x80 //EQ
#define IR_KEY_AMS 0x40 //AMS/SUB-T
#define IR_KEY_SUBT 0x40
#define IR_KEY_SYS 0xC0 //SYS
#define IR_KEY_STOP 0x52 //STOP
#define IR_KEY_INT 0x20
#define IR_KEY_RPT 0xA0
#define IR_KEY_RDM 0x60
#define IR_KEY_LOC 0x28
#define IR_KEY_LOU 0xE0
#define IR_KEY_VOL_UP 0x10
#define IR_KEY_STLR 0x90
#define IR_KEY_PBC 0xA8 //PBC
#define IR_KEY_SEEK_PREV 0x8A
#define IR_KEY_SEL 0x4A
#define IR_KEY_SEEK_FWD 0x00
#define IR_KEY_ESP 0xF8
#define IR_KEY_OSD 0x38
#define IR_KEY_VOL_DOWN 0xB8
#define IR_KEY_PROG 0xCA
#define IR_KEY_1 0x58 //1
#define IR_KEY_2 0x9A //2
#define IR_KEY_3 0x02 //3
#define IR_KEY_4 0x68 //4
#define IR_KEY_5 0x62 //5
#define IR_KEY_6 0x98 //6
#define IR_KEY_7 0xB0 //7
#define IR_KEY_8 0xD2 //8
#define IR_KEY_9 0xFA //9
#define IR_KEY_0 0xDA //0
#define IR_KEY_10 0xF2 //10+
#define IR_KEY_GOTO 0xEA //GOTO
#define IR_KEY_EJ 0xFF
#define IR_KEY_DSP 0xFF
#define IR_KEY_UNKNOW 0xFF
#elif defined(IR_VERSION_E)
#define REMOTE_ADDR 0x10 //0x10EF //遙控器用戶碼
#define IR_KEY_POWER 0xD0 //POWER
#define IR_KEY_MODE 0x30 //MODE
#define IR_KEY_PLAY 0x2A //PAUSE
#define IR_KEY_MUTE 0x12 //MUTE
#define IR_KEY_BND 0x82 //BND/SYS
#define IR_KEY_SYS 0x82 //SYS/BND
#define IR_KEY_UP 0x80 //UP
#define IR_KEY_TITLE 0x40 //AMS/PRT
#define IR_KEY_TA 0x40
#define IR_KEY_SUBT 0xC0
#define IR_KEY_PTY 0xC0
#define IR_KEY_LEFT 0x52 //STOP
#define IR_KEY_ENTER 0x20
#define IR_KEY_RIGHT 0xA0
#define IR_KEY_SETUP 0x60
#define IR_KEY_AF 0x60
#define IR_KEY_STOP 0x28
#define IR_KEY_DOWN 0xE0
#define IR_KEY_ANGLE 0x10
#define IR_KEY_AB 0x10
#define IR_KEY_SLOW 0x90
#define IR_KEY_RPT 0xA8 //PBC
#define IR_KEY_AMS 0xA8
#define IR_KEY_PROG 0x8A
#define IR_KEY_STLR 0x8A
#define IR_KEY_VOL_UP 0x4A
#define IR_KEY_ZOOM 0x00
#define IR_KEY_RDM 0xF8
#define IR_KEY_LOC 0xF8
#define IR_KEY_SEEK_PREV 0x38
#define IR_KEY_SEL 0xB8
#define IR_KEY_SEEK_FWD 0xCA
#define IR_KEY_PBC 0x58 //1
#define IR_KEY_OSD 0x9A //2
#define IR_KEY_VOL_DOWN 0x02 //3
#define IR_KEY_AUDIO 0x68 //4
#define IR_KEY_1 0x62 //5
#define IR_KEY_2 0x98 //6
#define IR_KEY_3 0xB0 //7
#define IR_KEY_4 0xD2 //8
#define IR_KEY_5 0xFA //9
#define IR_KEY_6 0xDA //0
#define IR_KEY_7 0xF2 //10+
#define IR_KEY_8 0xEA //GOTO
#define IR_KEY_9 0x7A
#define IR_KEY_0 0x5A
#define IR_KEY_10 0x72
#define IR_KEY_GOTO 0x6A
#define IR_KEY_EJ 0xFF
#define IR_KEY_DSP 0xFF
#define IR_KEY_UNKNOW 0xFF
#endif
#define TCNT1_VAL 0xffff-ICR_SPACE_1ST*9
void ir_thread(void);
BYTE ir_get_index(BYTE value);
void ir_key_up(void);
void ir_key_down(void);
void ir_key_repeat(void);
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -