📄 timer.src
字号:
MOV DPTR,#pressing_key
?C0181:
; old_key = key;
; SOURCE LINE # 845
SJMP ?C0183
; return;
; }
; SOURCE LINE # 847
; }
; SOURCE LINE # 848
;
; break;
; SOURCE LINE # 850
;
; case K_MenuKey:
; SOURCE LINE # 852
?C0096:
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 853
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 854
LCALL L?0189
; TIMER0_SetGPIOBit(21,1);
; SOURCE LINE # 855
MOV R5,#01H
; TIMER0_GetGPIOBit(23,&temp_key);
; SOURCE LINE # 856
;
; if (temp_key == 0)
; SOURCE LINE # 858
LCALL L?0188
JNZ ?C0074
; {
; SOURCE LINE # 859
; if (key != temp_key)
; SOURCE LINE # 860
LCALL L?0192
JZ ?C0098
; {
; SOURCE LINE # 861
; key = temp_key;
; SOURCE LINE # 862
MOV A,R7
MOVX @DPTR,A
SJMP ?C0054
; return;
; }
; SOURCE LINE # 864
?C0098:
; else
; {
; SOURCE LINE # 866
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 867
CLR A
MOV DPTR,#pressing_key
?C0182:
; old_key = key;
; SOURCE LINE # 868
SJMP ?C0183
; return;
; }
; SOURCE LINE # 870
; }
; SOURCE LINE # 871
;
; break;
; SOURCE LINE # 873
;
; case K_SelectKey:
; SOURCE LINE # 875
?C0100:
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 876
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 877
LCALL L?0189
; TIMER0_SetGPIOBit(21,1);
; SOURCE LINE # 878
MOV R5,#01H
; TIMER0_GetGPIOBit(24,&temp_key);
; SOURCE LINE # 879
;
; if (temp_key == 0)
; SOURCE LINE # 881
LCALL L?0187
JNZ ?C0074
; {
; SOURCE LINE # 882
; if (key != temp_key)
; SOURCE LINE # 883
LCALL L?0192
JZ ?C0102
; {
; SOURCE LINE # 884
; key = temp_key;
; SOURCE LINE # 885
MOV A,R7
MOVX @DPTR,A
SJMP ?C0054
; return;
; }
; SOURCE LINE # 887
?C0102:
; else
; {
; SOURCE LINE # 889
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 890
CLR A
MOV DPTR,#pressing_key
?C0183:
MOVX @DPTR,A
; old_key = key;
; SOURCE LINE # 891
MOV DPTR,#old_key
MOV A,R6
MOVX @DPTR,A
SJMP ?C0054
; return;
; }
; SOURCE LINE # 893
; }
; SOURCE LINE # 894
;
; break;
; SOURCE LINE # 896
;
; default:
; SOURCE LINE # 898
?C0104:
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 899
CLR A
MOV DPTR,#pressing_key
MOVX @DPTR,A
; old_key = key;
; SOURCE LINE # 900
MOV DPTR,#key
MOVX A,@DPTR
MOV DPTR,#old_key
MOVX @DPTR,A
; break;
; SOURCE LINE # 901
; }
; SOURCE LINE # 902
; }
; SOURCE LINE # 903
?C0074:
;
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 905
CLR A
MOV R5,A
MOV R7,#013H
LCALL _TIMER0_SetGPIOBit
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 906
CLR A
MOV R5,A
MOV R7,#014H
LCALL _TIMER0_SetGPIOBit
; TIMER0_SetGPIOBit(21,0);
; SOURCE LINE # 907
CLR A
MOV R5,A
MOV R7,#015H
LCALL _TIMER0_SetGPIOBit
;
; #else
;
; if ((pressing_key == K_ReleaseKey) || (pressing_key == 0x04))
; {
; Key_Column1 = 1; //Scan Display,Menu,Snap1,Snap2
; Key_Column2 = 0;
; //Joe@2003.3.7 13:41 add begin
; Key_Column3 = 0;
; //Joe@2003.3.7 13:41 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
;
; temp_key &= 0x1e;
;
; if ((temp_key == 0x02) && (pressing_key == K_ReleaseKey)) //Check Display Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_DisplayKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x04) && (pressing_key == K_ReleaseKey)) //Check Menu Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_MenuKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x08) && (pressing_key == K_ReleaseKey)) //Check Snap1 Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_Snap1Key;
; old_key = key;
; return;
; }
; }
; else
; {
; //Joe@2003.3.7 12:35 modify begin
; //if ((temp_key == 0x18) && (pressing_key == K_Snap1Key)) //Check Snap2 Key
; if ( ((temp_key == 0x18) && (pressing_key == K_Snap1Key)) ||
; ((temp_key == 0x10) && (pressing_key == K_ReleaseKey)) )
; //Joe@2003.3.7 12:35 modify end
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_Snap2Key;
; old_key = key;
; return;
; }
; }
; }
; }
; }
;
; Key_Column1 = 0;
; Key_Column2 = 1; //Scan Left,Up,Right,Down
; //Joe@2003.3.7 13:41 add begin
; Key_Column3 = 0;
; //Joe@2003.3.7 13:41 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
;
; temp_key &= 0x1e;
;
; if ((temp_key == 0x02) && (pressing_key == K_ReleaseKey)) //Check Left Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_LeftKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x04) && (pressing_key == K_ReleaseKey)) //Check Up Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_UpKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x08) && (pressing_key == K_ReleaseKey)) //Check Right Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_RightKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x10) && (pressing_key == K_ReleaseKey)) //Check Down Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_DownKey;
; old_key = key;
; return;
; }
; }
; }
; }
; }
;
; //Joe@2003.3.5 11:20 add begin
; Key_Column1 = 0;
; Key_Column2 = 0; //Scan Preview/Playback key, Flash key
; //Joe@2003.3.7 13:41 add begin
; Key_Column3 = 1;
; //Joe@2003.3.7 13:41 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
;
; temp_key &= 0x1e;
;
; if ((temp_key == 0x04) && (pressing_key == K_ReleaseKey)) //Check Preview/Playback Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_ModeKey;
; old_key = key;
; return;
; }
; }
; else
; {
; if ((temp_key == 0x02) && (pressing_key == K_ReleaseKey)) //Check Flash Key
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_FlashKey;
; old_key = key;
; return;
; }
; }
; }
; //Joe@2003.3.5 11:20 add end
; }
;
; //Check if all 8 keys are released
; if (pressing_key > K_ReleaseKey)
; {
; if (pressing_key <= 0x08) //Check Display,Menu,Snap1,Snap2
; {
; Key_Column1 = 1;
; Key_Column2 = 0;
; //Joe@2003.3.7 13:42 add begin
; Key_Column3 = 0;
; //Joe@2003.3.7 13:42 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
; temp_key &= 0x1e;
;
; if (temp_key == 0x00)
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_ReleaseKey;
; old_key = key;
; return;
; }
; }
; }
; //Joe@2003.3.5 12:45 modify begin
; //else //pressing_key >= 0x10,Check Left,Up,Right,Down
; else if (pressing_key <= 0x80) //Check Left,Up,Right,Down
; //Joe@2003.3.5 12:45 modify end
; {
; Key_Column1 = 0;
; Key_Column2 = 1;
; //Joe@2003.3.7 13:42 add begin
; Key_Column3 = 0;
; //Joe@2003.3.7 13:42 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
; temp_key &= 0x1e;
;
; if (temp_key == 0x00)
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_ReleaseKey;
; old_key = key;
; return;
; }
; }
; }
;
; //Joe@2003.3.5 12:46 add begin
; else if (pressing_key > 0x80) //Check Preview/Playback,Flash
; {
; Key_Column1 = 0;
; Key_Column2 = 0;
; //Joe@2003.3.7 13:42 add begin
; Key_Column3 = 1;
; //Joe@2003.3.7 13:42 add end
;
; TIMER0_GetGPIOByte(25,&temp_key);
; temp_key &= 0x1e;
;
; if (temp_key == 0x00)
; {
; if (key != temp_key)
; {
; key = temp_key;
; return;
; }
; else
; {
; pressing_key = K_ReleaseKey;
; old_key = key;
; return;
; }
; }
; }
; //Joe@2003.3.5 12:46 add end
; }
; #endif
; }
; SOURCE LINE # 1203
?C0054:
POP PSW
RET
L?0184:
MOV R5,#01H
MOV R7,#013H
LCALL _TIMER0_SetGPIOBit
CLR A
MOV R5,A
MOV R7,#014H
LCALL _TIMER0_SetGPIOBit
CLR A
MOV R5,A
MOV R7,#015H
LCALL _TIMER0_SetGPIOBit
MOV R3,#01H
MOV R2,#HIGH (temp_key?541)
MOV R1,#LOW (temp_key?541)
MOV R7,#016H
LCALL _TIMER0_GetGPIOBit
MOV DPTR,#temp_key?541
MOVX A,@DPTR
MOV R7,A
RET
L?0185:
CLR A
MOV R5,A
MOV R7,#013H
LCALL _TIMER0_SetGPIOBit
MOV R5,#01H
MOV R7,#014H
LCALL _TIMER0_SetGPIOBit
CLR A
MOV R5,A
MOV R7,#015H
LCALL _TIMER0_SetGPIOBit
MOV R3,#01H
MOV R2,#HIGH (temp_key?541)
MOV R1,#LOW (temp_key?541)
MOV R7,#016H
LCALL _TIMER0_GetGPIOBit
MOV DPTR,#temp_key?541
MOVX A,@DPTR
MOV R7,A
RET
L?0186:
CLR A
MOV R5,A
MOV R7,#013H
LCALL _TIMER0_SetGPIOBit
CLR A
MOV R5,A
MOV R7,#014H
LCALL _TIMER0_SetGPIOBit
MOV R5,#01H
MOV R7,#015H
LCALL _TIMER0_SetGPIOBit
MOV R3,#01H
MOV R2,#HIGH (temp_key?541)
MOV R1,#LOW (temp_key?541)
MOV R7,#016H
LCALL _TIMER0_GetGPIOBit
MOV DPTR,#temp_key?541
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -