📄 timer.c
字号:
G_IsKeyRelease = 1;
}
break;
case K_SelectKey:
if (G_IsKeyRelease == 0)
{
G_KeyState = K_UI_BUTTON_SELECT;//K_UI_BUTTON_DISP;
G_IsKeyRelease = 1;
}
break;
//-------------------Davis:patch_2005/Apr/08 mask end*/
case K_Snap1Key:
if (G_IsKeyRelease == 0)
{
G_KeyState = K_UI_BUTTON_SNAP1;
//G_IsKeyRelease = 1;
}
break;
case K_Snap2Key:
if (G_IsKeyRelease == 0)
{
G_KeyState = K_UI_BUTTON_SNAP2;
G_IsKeyRelease = 1;
}
break;
//Joe@2003.3.5 12:49 add begin
case K_ModeKey:
//case K_MenuKey:
if (G_IsKeyRelease == 0)
{
if ((G_UIStatusH & 0xff00) == K_UISTATUS_DSC_PREVIEW)
{
G_KeyState = K_UI_BUTTON_PLAY_SWITCH;
//G_ucZoomFactor=10;
//L1_DisplayZoomIn(G_ucZoomFactor);
// G_AE_com_index=4;
}
else if((G_UIStatusH & 0xff00) == K_UISTATUS_DSC_PLAY)
{
//G_AE_com_index=2;
G_KeyState = K_UI_BUTTON_VIDEO_SWITCH;
}
else if((G_UIStatusH & 0xff00) == K_UISTATUS_DSC_VIDEO)
{
G_KeyState = K_UI_BUTTON_PCCAM_SWITCH;
}
else if((G_UIStatusH & 0xff00) == K_UISTATUS_DSC_PCCAM)
{
G_KeyState = K_UI_BUTTON_PREVIEW_SWITCH;
UI_Buzzer();
}
G_IsKeyRelease = 1;
}
break;
case K_ReleaseKey:
//Joe@2003.3.5 9:06 add begin
G_KeepPushKeyCount = 0;
//Joe@2003.3.5 9:06 add end
G_IsKeyRelease = 0;
break;
default:
break;
}
}
//=============================================================================
//TIMER0_Get_Hardware_Keypad1
//=============================================================================
//ada@0415 test ui
//patch4.2@ada@0527 for key scan
void TIMER0_Get_Hardware_Keypad1(void) USING_2
{
UCHAR temp_key;
#if (TURNKEY_OPTION == 1)
if (pressing_key == K_ReleaseKey)
{
//SCAN_A
TIMER0_SetGPIOBit(19,1);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,0);
//DET_A
TIMER0_GetGPIOBit(22,&temp_key); //Check Snap Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_Snap2Key;
old_key = key;
return;
}
}
//DET_B
TIMER0_GetGPIOBit(23,&temp_key); //Check Preview/Play Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_UpKey;//K_DisplayKey;
old_key = key;
return;
}
}
//DET_C
TIMER0_GetGPIOBit(24,&temp_key); //Check Right Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_DownKey;
old_key = key;
return;
}
}
//SCAN_B
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,1);
TIMER0_SetGPIOBit(21,0);
//DET_A
TIMER0_GetGPIOBit(22,&temp_key); //Check Display Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ModeKey;//K_ModeKey;
old_key = key;
return;
}
}
/*
//DET_B
TIMER0_GetGPIOBit(23,&temp_key); //Check Flash Light Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_FlashKey;
old_key = key;
return;
}
}
//DET_C
TIMER0_GetGPIOBit(24,&temp_key); //Check Left Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_LeftKey;
old_key = key;
return;
}
}
*/
//SCAN_C
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,1);
//DET_A
TIMER0_GetGPIOBit(22,&temp_key); //Check Menu Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_DisplayKey;
old_key = key;
return;
}
}
//DET_B
TIMER0_GetGPIOBit(23,&temp_key); //Check Up Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_MenuKey;
old_key = key;
return;
}
}
//DET_C
TIMER0_GetGPIOBit(24,&temp_key); //Check Down Key
if (temp_key)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_SelectKey;
old_key = key;
return;
}
}
}
else //Check if all keys are released
{
switch(pressing_key)
{
case K_Snap2Key:
TIMER0_SetGPIOBit(19,1);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(22,&temp_key);
if (temp_key == 0)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ReleaseKey;
old_key = key;
return;
}
}
break;
case K_ModeKey:
/*andrew_gu@2005/Mar/24, 14::25 (*/
/*
TIMER0_SetGPIOBit(19,1);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(23,&temp_key);//*/
//*
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,1);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(22,&temp_key);//*/
/*andrew_gu@2005/Mar/24, 14::25 )*/
if (temp_key == 0)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ReleaseKey;
old_key = key;
return;
}
}
break;
case K_DownKey:
TIMER0_SetGPIOBit(19,1);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(24,&temp_key);
if (temp_key == 0)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ReleaseKey;
old_key = key;
return;
}
}
break;
case K_UpKey:
/*andrew_gu@2005/Mar/24, 14::10 (*/
/*
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,1);
TIMER0_SetGPIOBit(21,0);
TIMER0_SetGPIOBit(22,&temp_key);//*/
//*
TIMER0_SetGPIOBit(19,1);
TIMER0_SetGPIOBit(20,0);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(23,&temp_key);
/*andrew_gu@2005/Mar/24, 14::10 )*/
if (temp_key == 0)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ReleaseKey;
old_key = key;
return;
}
}
break;
/*
case K_FlashKey:
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,1);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(23,&temp_key);
if (temp_key == 0)
{
if (key != temp_key)
{
key = temp_key;
return;
}
else
{
pressing_key = K_ReleaseKey;
old_key = key;
return;
}
}
break;
case K_LeftKey:
TIMER0_SetGPIOBit(19,0);
TIMER0_SetGPIOBit(20,1);
TIMER0_SetGPIOBit(21,0);
TIMER0_GetGPIOBit(24,&temp_key);
if (temp_key == 0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -