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

📄 timer.src

📁 台湾凌阳方案300万数码相机源代码
💻 SRC
📖 第 1 页 / 共 5 页
字号:
	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 + -