|
|
@ -53,12 +53,13 @@ void on_zapp_ebus_event(void* p_event_data, uint16_t event_size); |
|
|
|
***********************************************************************************************************************/ |
|
|
|
void on_zble_event(zble_event_t* event) { |
|
|
|
static app_event_t appevent; |
|
|
|
m_last_usr_operation_time = znordic_getpower_on_ms(); |
|
|
|
if (event->eventType == kzble_event_connected) { |
|
|
|
appevent.eventType = kappevent_ble_connected; |
|
|
|
on_zapp_ebus_event(&appevent, sizeof(app_event_t)); |
|
|
|
zapp_ebus_push_event(&appevent); |
|
|
|
} else if (event->eventType == kzble_event_disconnected) { |
|
|
|
appevent.eventType = kappevent_ble_disconnected; |
|
|
|
on_zapp_ebus_event(&appevent, sizeof(app_event_t)); |
|
|
|
zapp_ebus_push_event(&appevent); |
|
|
|
} |
|
|
|
} |
|
|
|
/*********************************************************************************************************************** |
|
|
@ -148,7 +149,7 @@ static void update_light_state() { |
|
|
|
} else if (g_hand_acid_mode == khand_acid_m_continuous_mode) { |
|
|
|
nrf_gpio_set_rgb(0, 1, 0); // 手动模式 |
|
|
|
} else if (g_hand_acid_mode == khand_acid_m_unset_mode) { |
|
|
|
nrf_gpio_set_rgb(0, 1, 1); // 状态未同步 |
|
|
|
nrf_gpio_set_rgb(1, 1, 1); // 状态未同步 |
|
|
|
} |
|
|
|
} else { |
|
|
|
nrf_gpio_set_rgb(1, 0, 0); |
|
|
@ -161,7 +162,7 @@ void on_zapp_ebus_event(void* p_event_data, uint16_t event_size) { |
|
|
|
app_event_t* p_event = (app_event_t*)p_event_data; |
|
|
|
app_event_type_t event = p_event->eventType; |
|
|
|
|
|
|
|
ZLOGI("event:%d add_acid_key:%d reverse_key:%d", p_event->eventType, nrf_gpio_pin_read(ADD_ACID_KEY), nrf_gpio_pin_read(REVERSE_KEY)); |
|
|
|
// ZLOGI("event:%d add_acid_key:%d reverse_key:%d", p_event->eventType, nrf_gpio_pin_read(ADD_ACID_KEY), nrf_gpio_pin_read(REVERSE_KEY)); |
|
|
|
|
|
|
|
if (zapp_state_machine_now_state() == kstate_standby) { |
|
|
|
if (event == kappevent_state_machine_state_enter) { |
|
|
@ -175,6 +176,7 @@ void on_zapp_ebus_event(void* p_event_data, uint16_t event_size) { |
|
|
|
ZLOGI("ble connected"); |
|
|
|
g_connected = true; |
|
|
|
update_light_state(); |
|
|
|
zapp_state_machine_change_state(kstate_working_state); |
|
|
|
break; |
|
|
|
case kappevent_ble_disconnected: |
|
|
|
ZLOGI("ble disconnected"); |
|
|
@ -234,9 +236,16 @@ void on_zapp_ebus_event(void* p_event_data, uint16_t event_size) { |
|
|
|
} |
|
|
|
|
|
|
|
if (g_hand_pump_working_state != khand_acid_pump_is_working) { |
|
|
|
if (znordic_haspassed_ms(m_last_usr_operation_time) > (60 * 1000)) { |
|
|
|
ZLOGI("no operation over 60s, enter standby"); |
|
|
|
zapp_state_machine_change_state(kstate_standby); |
|
|
|
if (g_connected) { |
|
|
|
if (znordic_haspassed_ms(m_last_usr_operation_time) > (5 * 60 * 1000)) { |
|
|
|
ZLOGI("no operation over 5min, enter standby"); |
|
|
|
zapp_state_machine_change_state(kstate_standby); |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (znordic_haspassed_ms(m_last_usr_operation_time) > (5 * 1000)) { |
|
|
|
ZLOGI("no operation over 5s, enter standby"); |
|
|
|
zapp_state_machine_change_state(kstate_standby); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -334,6 +343,7 @@ static void board_init() { |
|
|
|
nrf_gpio_cfg_output(LEDG); |
|
|
|
nrf_gpio_cfg_output(LEDB); |
|
|
|
nrf_gpio_cfg_output(NRF_DBG_LED1); |
|
|
|
nrf_gpio_pin_write(NRF_DBG_LED1, 1); |
|
|
|
} |
|
|
|
|
|
|
|
void acid_dispenser_ble_slave_main() { |
|
|
|