if(events & KFD_DCMOTOR_OFF_EVT) { DCM_off();//Turn of the motor Forward and Reverse pins HalLedSet( HAL_LED_1, HAL_LED_MODE_OFF ); HalLedSet( HAL_LED_2, HAL_LED_MODE_OFF ); osal_pwrmgr_device( PWRMGR_BATTERY ); return (events ^ KFD_DCMOTOR_OFF_EVT); } if(events & KFD_FLOWERPOD_CHG_STATE_EVT) { switch(flowerpod_get_pos()) { case oprejst: switch(flowerpod_get_trans()) { case oprejst_midt: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_forward(); flowerpod_set_pos(midt); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 800); break; case oprejst_nedfalden: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_forward(); flowerpod_set_pos(nedfalden); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 800); break; } break; case midt: switch(flowerpod_get_trans()) { case midt_oprejst: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_reverse(); flowerpod_set_pos(oprejst); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 1000); break; case midt_nedfalden: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_forward(); flowerpod_set_pos(nedfalden); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 1000); break; } break; case nedfalden: switch(flowerpod_get_trans()) { case nedfalden_midt: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_reverse(); flowerpod_set_pos(midt); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 800); break; case nedfalden_oprejst: HalLedSet( HAL_LED_1, HAL_LED_MODE_ON ); DCM_reverse(); flowerpod_set_pos(oprejst); flowerpod_set_trans(idle); osal_start_timerEx( keyfobapp_TaskID, KFD_DCMOTOR_OFF_EVT, 2000); break; } break; } return (events ^ KFD_FLOWERPOD_CHG_STATE_EVT); }