| | |
| | | } |
| | | #endif |
| | | } |
| | | |
| | | uint8_t state_flag=0; |
| | | static void power_clear_if_power_mode(void) |
| | | { |
| | | power_mode_clear(POWER_UNIT_UART); |
| | |
| | | |
| | | if (power_env.power_request[POWER_MODE_ACTIVE]) |
| | | { |
| | | state_flag=1; |
| | | // stay in active mode |
| | | } |
| | | else |
| | |
| | | if (power_env.power_request[POWER_MODE_ACTIVE]) |
| | | { |
| | | // stay in active mode |
| | | state_flag=2; |
| | | } |
| | | else if (power_env.power_request[POWER_MODE_SLEEP]) |
| | | { |
| | | // enter sleep mode |
| | | state_flag=3; |
| | | power_enter_sleep_mode(); |
| | | } |
| | | else if (power_env.power_request[POWER_MODE_POWER_DOWN]) |
| | | { |
| | | // enter power down mode |
| | | // board_led_on(BOARD_LED_1); |
| | | state_flag=4; |
| | | power_enter_power_down_mode(0); |
| | | // board_led_off(BOARD_LED_1); |
| | | wakeup_from_power_down = 1; |
| | |
| | | { |
| | | // enter deep power down mode |
| | | // board_led_on(BOARD_LED_2); |
| | | state_flag=5; |
| | | power_enter_power_down_mode(1); |
| | | // board_led_off(BOARD_LED_2); |
| | | wakeup_from_power_down = 1; |
| | | } |
| | | else |
| | | { |
| | | state_flag=6; |
| | | power_enter_shelf_mode(); |
| | | } |
| | | |