📄 timer.src
字号:
LCALL L?0189
JNZ ?C0076
; {
; SOURCE LINE # 833
; if (key != temp_key)
; SOURCE LINE # 834
LCALL L?0195
JZ ?C0096
; {
; SOURCE LINE # 835
; key = temp_key;
; SOURCE LINE # 836
MOV A,R7
MOVX @DPTR,A
LJMP ?C0056
; return;
; }
; SOURCE LINE # 838
?C0096:
; else
; {
; SOURCE LINE # 840
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 841
CLR A
MOV DPTR,#pressing_key
?C0184:
; old_key = key;
; SOURCE LINE # 842
SJMP ?C0186
; return;
; }
; SOURCE LINE # 844
; }
; SOURCE LINE # 845
;
; break;
; SOURCE LINE # 847
;
; case K_MenuKey:
; SOURCE LINE # 849
?C0098:
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 850
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 851
LCALL L?0192
; TIMER0_SetGPIOBit(21,1);
; SOURCE LINE # 852
MOV R5,#01H
; TIMER0_GetGPIOBit(23,&temp_key);
; SOURCE LINE # 853
;
; if (temp_key == 0)
; SOURCE LINE # 855
LCALL L?0191
JNZ ?C0076
; {
; SOURCE LINE # 856
; if (key != temp_key)
; SOURCE LINE # 857
LCALL L?0195
JZ ?C0100
; {
; SOURCE LINE # 858
; key = temp_key;
; SOURCE LINE # 859
MOV A,R7
MOVX @DPTR,A
SJMP ?C0056
; return;
; }
; SOURCE LINE # 861
?C0100:
; else
; {
; SOURCE LINE # 863
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 864
CLR A
MOV DPTR,#pressing_key
?C0185:
; old_key = key;
; SOURCE LINE # 865
SJMP ?C0186
; return;
; }
; SOURCE LINE # 867
; }
; SOURCE LINE # 868
;
; break;
; SOURCE LINE # 870
;
; case K_SelectKey:
; SOURCE LINE # 872
?C0102:
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 873
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 874
LCALL L?0192
; TIMER0_SetGPIOBit(21,1);
; SOURCE LINE # 875
MOV R5,#01H
; TIMER0_GetGPIOBit(24,&temp_key);
; SOURCE LINE # 876
;
; if (temp_key == 0)
; SOURCE LINE # 878
LCALL L?0190
JNZ ?C0076
; {
; SOURCE LINE # 879
; if (key != temp_key)
; SOURCE LINE # 880
LCALL L?0195
JZ ?C0104
; {
; SOURCE LINE # 881
; key = temp_key;
; SOURCE LINE # 882
MOV A,R7
MOVX @DPTR,A
SJMP ?C0056
; return;
; }
; SOURCE LINE # 884
?C0104:
; else
; {
; SOURCE LINE # 886
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 887
CLR A
MOV DPTR,#pressing_key
?C0186:
MOVX @DPTR,A
; old_key = key;
; SOURCE LINE # 888
MOV DPTR,#old_key
MOV A,R6
MOVX @DPTR,A
SJMP ?C0056
; return;
; }
; SOURCE LINE # 890
; }
; SOURCE LINE # 891
;
; break;
; SOURCE LINE # 893
;
; default:
; SOURCE LINE # 895
?C0106:
; pressing_key = K_ReleaseKey;
; SOURCE LINE # 896
CLR A
MOV DPTR,#pressing_key
MOVX @DPTR,A
; old_key = key;
; SOURCE LINE # 897
MOV DPTR,#key
MOVX A,@DPTR
MOV DPTR,#old_key
MOVX @DPTR,A
; break;
; SOURCE LINE # 898
; }
; SOURCE LINE # 899
; }
; SOURCE LINE # 900
?C0076:
;
; TIMER0_SetGPIOBit(19,0);
; SOURCE LINE # 902
CLR A
MOV R5,A
MOV R7,#013H
LCALL _TIMER0_SetGPIOBit
; TIMER0_SetGPIOBit(20,0);
; SOURCE LINE # 903
CLR A
MOV R5,A
MOV R7,#014H
LCALL _TIMER0_SetGPIOBit
; TIMER0_SetGPIOBit(21,0);
; SOURCE LINE # 904
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 # 1200
?C0056:
POP PSW
RET
L?0187:
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?0188:
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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -