📄 main.c
字号:
_bSystemCount = 100; // Power key hold must over 2 sec
PWRLEDOn(); // Power LED off
_bSystemMode = POWER_ON_PWRSW_HOLD; // Mode: Power on power switch hold
}
if (_bVolUpKeyStatus == SW_HOLD) // Volume Up key pressed
{
_bSystemCount = 250; // All LED flash hold 5 sec
VolUpLEDOn(); // Volume Up LED on
SetVolUp(); // Set Volume Up control
_bSystemMode = VOLUME_UP;
}
if (_bVolDnKeyStatus == SW_HOLD) // Volume Down key pressed
{
_bSystemCount = 250; // All LED flash hold 5 sec
VolDnLEDOn(); // Volume Down LED on
SetVolDn(); // Set Volume Down control
_bSystemMode = VOLUME_DOWN;
}
if (_testbit_(_fgMuteKeyPressed)) // Mute key pressed
{
_bSystemCount = 250; // All LED on hold 5 sec
MuteLEDOn(); // Mute LED on
SetMuteOn(); // Mute control On
_bSystemMode = MUTE_ON;
}
break;
case POWER_ON_PWRSW_HOLD:
if (_bPWRKeyStatus == SW_HOLD)
{
// check Power SW hold time
if (!_bSystemCount) // Power Sw hold on 2 sec
{
_bSystemCount = 150; // set Power Sw hold time(3 sec) to set flash LED total keep time
_fgPWRLEDFlash = 1; // Power Off LED flash enable
_bPWRLEDBlinkTime = _bFlashCount = 25; // flash hild count 500ms every on/off
_bSystemMode = POWER_ON_TRIG_POWER_OFF; // set event as "Power off Trigger" and start flash LED
}
}
else if (_bPWRKeyStatus == SW_NORMAL)
{
PWRLEDOff(); // Power LED off
_bSystemCount = 250; // All LED flash hold 5 sec
_bSystemMode = POWER_ON_CONNECTED;
}
break;
case POWER_ON_TRIG_POWER_OFF:
if (!_bSystemCount) // Power off flash time out
{
SetMuteOff(); // Mute function control OFF
MuteLEDOff(); // Mute LED off
ClrVolUp(); // Volume Up function control OFF
VolUpLEDOff(); // Volume Up LED off
ClrVolDn(); // Volume Down function control OFF
VolDnLEDOff(); // Volume Down LED off
SetPowerOff(); // Docking Power Off
PWRLEDOff(); // Power LED off
ExpCardLEDOff(); // ExpressCard LED Off
_fgExpCardLEDFlash = 0; // ExpressCard LED flash Off
_fgPWRKeyPressed = 0; // Power key press flag off
_fgPWRLEDFlash = 0; // Stop Flash Power LED
_fgMuteLEDFlash = 0; // Mute LED Flash flag
_fgVolUpLEDFlash = 0; // Volume Up LED Flash flag
_fgVolDnLEDFlash = 0; // Volume Down LED Flash flag
_bSystemCount = 50; // Idle time out 1 sec
_bSystemMode = POWER_OFF_NORMAL; // change mode
}
break;
case MUTE_ON:
if (_testbit_(_fgMuteKeyPressed)) // Mute key released
{
MuteLEDOff(); // Mute LED off
SetMuteOn(); // Mute function control OFF
_bSystemCount = 250; // All LED flash hold 5 sec
_bSystemMode = POWER_ON_CONNECTED;
}
//if (_bVolUpKeyStatus == SW_HOLD) // Mute key pressed
//{
// MuteLEDOff(); // Mute LED off
// SetMuteOn(); // Mute function control OFF
// _bSystemMode = VOLUME_UP;
//}
//if (_bVolDnKeyStatus == SW_HOLD) // Volume Up key pressed
//{
// MuteLEDOff(); // Mute LED off
// SetMuteOn(); // Mute function control OFF
// _bSystemMode = VOLUME_DOWN;
//}
if (_testbit_(_fgPWRKeyPressed)) // Power key pressed
{
PWRLEDOn(); // Power LED off
_bSystemCount = 100; // Power key hold must over 2 sec
_bSystemMode = POWER_ON_PWRSW_HOLD;
}
if (_bExpCardStatus == SW_NORMAL) // ExpressCard break
{
MuteLEDOff(); // Mute LED off
_fgExpCardLEDFlash = 0; // ExpressCard LED Off
SetPowerOff(); // Set Power control off
_bSystemMode = POWER_ON_CHECK_HOST;
}
//if (_bPEXResetStatus == SW_HOLD) // Host PEXX_RST pin low -> Reset
//{
// MuteLEDOff();
// SetPowerOff(); // Set Power control off
// _bSystemMode = POWER_ON_CHECK_HOST;
//}
break;
case VOLUME_UP:
if (_bVolUpKeyStatus == SW_NORMAL) // Volume Up key released
{
VolUpLEDOff();
ClrVolUp();
_bSystemCount = 250; // All LED flash hold 5 sec
_bSystemMode = POWER_ON_CONNECTED;
}
if (_testbit_(_fgPWRKeyPressed)) // Power key pressed
{
PWRLEDOn(); // Power LED off
VolUpLEDOff();
ClrVolUp();
_bSystemCount = 100; // Power key hold must over 2 sec
_bSystemMode = POWER_ON_PWRSW_HOLD;
}
if (_bExpCardStatus == SW_NORMAL) // ExpressCard break
{
VolUpLEDOff();
_fgExpCardLEDFlash = 0; // ExpressCard LED Off
ClrVolUp();
SetPowerOff(); // Set Power control off
_bSystemMode = POWER_ON_CHECK_HOST;
}
//if (_bPEXResetStatus == SW_HOLD) // Host PEX_RST pin low -> Reset
//{
// VolUpLEDOff();
// ClrVolUp();
// SetPowerOff(); // Set Power control off
// _bSystemMode = POWER_ON_CHECK_HOST;
//}
break;
case VOLUME_DOWN:
if (_bVolUpKeyStatus == SW_NORMAL) // Volume Up key released
{
VolDnLEDOff();
ClrVolDn();
_bSystemCount = 250; // All LED flash hold 5 sec
_bSystemMode = POWER_ON_CONNECTED;
}
if (_testbit_(_fgPWRKeyPressed)) // Power key pressed
{
PWRLEDOn(); // Power LED off
VolDnLEDOff();
ClrVolDn();
_bSystemCount = 100; // Power key hold must over 2 sec
_bSystemMode = POWER_ON_PWRSW_HOLD;
}
if (_bExpCardStatus == SW_NORMAL) // ExpressCard break
{
VolDnLEDOff();
_fgExpCardLEDFlash = 0; // ExpressCard LED Off
ClrVolDn();
SetPowerOff(); // Set Power control off
_bSystemMode = POWER_ON_CHECK_HOST;
}
//if (_bPEXResetStatus == SW_HOLD) // Host PEXX_RST pin low -> Reset
//{
// VolDnLEDOff();
// ClrVolDn();
// SetPowerOff(); // Set Power control off
// _bSystemMode = POWER_ON_CHECK_HOST;
//}
break;
}// End of check System Mode
if (!_bSystemCount)
{
if (_bSystemMode == MUTE_ON)
{
MuteLEDOn(); // Mute LED On
VolUpLEDOff(); // Volume Up LED Off
VolDnLEDOff(); // Volume Down LED Off
}
else if (_bSystemMode == VOLUME_UP)
{
MuteLEDOff(); // Mute LED Off
VolUpLEDOn(); // Volume Up LED On
VolDnLEDOff(); // Volume Down LED Off
}
else if (_bSystemMode == VOLUME_DOWN)
{
MuteLEDOff(); // Mute LED Off
VolUpLEDOff(); // Volume Up LED Off
VolDnLEDOn(); // Volume Down LED On
}
else
{
MuteLEDOff(); // Mute LED Off
VolUpLEDOff(); // Volume Up LED Off
VolDnLEDOff(); // Volume Down LED Off
}
}
} // End of 20ms time out
} // End of while loop
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -