/************************************************************************** * * Copyright (c) 2009-2023 by SiFar Technology, Inc. * * This software is copyrighted by and is the property of SiFar * Technology, Inc.. All rights are reserved by SiFar Technology, Inc.. * This software may only be used in accordance with the corresponding * license agreement. Any unauthorized use, duplication, distribution, * or disclosure of this software is expressly forbidden. * * This Copyright notice MUST not be removed or modified without prior * written consent of SiFar Technology, Inc.. * * SiFar Technology, Inc. reserves the right to modify this software without notice. * * Author: Payton * Ver: 1.0.0 2023.01.29 * Description: * **************************************************************************/ #include "UIInfo/UIInfo.h" void sf_trigger_time_led_cb(UINT32 cnt); void sf_trigger_time_led_cb_init(void); typedef enum LedId_e { #if HW_S530 SF_LED_STATUS_R, SF_LED_STATUS_G, SF_LED_SD_G, SF_LED_SD_R, SF_LED_WIFI, SF_LED_BAT1, SF_LED_BAT2, SF_LED_BAT3, SF_LED_BAT4, SF_LED_SIG1_R, SF_LED_SIG1_G, SF_LED_SIG2, SF_LED_SIG3, SF_LED_SIG4, #endif SF_LED_BUSY, SF_LED_ALL, }LedId_t; typedef enum Ledstate_e { SF_LED_STATE_OFF, SF_LED_STATE_ON, SF_LED_STATE_SLOW_FLASHING,/*0.5s*/ SF_LED_STATE_FLASHING, /*1s*/ }Ledstate_t; typedef enum LedSysState_e { SF_LED_SYS_STATE_ERROR, SF_LED_SYS_STATE_NORMAL, SF_LED_SYS_STATE_UPDATE, SF_LED_SYS_STATE_SENDING, SF_LED_SYS_STATE_SEND_FAIL, SF_LED_SYS_STATE_SEND_SUCCESS, SF_LED_SYS_STATE_SD_NORMAL,/*6*/ SF_LED_SYS_STATE_SD_ERROR, SF_LED_SYS_STATE_SD_FULL, SF_LED_SYS_STATE_SD_FORMAT_START, SF_LED_SYS_STATE_SD_FORMAT_SUCCESS, SF_LED_SYS_STATE_SD_FORMAT_FAIL, SF_LED_SYS_STATE_SD_FORMAT_EXIT, SF_LED_SYS_STATE_WIFI_DISCONNECT,/*13*/ SF_LED_SYS_STATE_WIFI_CONNECTED, SF_LED_SYS_STATE_BAT_0,/*15*/ SF_LED_SYS_STATE_BAT_1, SF_LED_SYS_STATE_BAT_2, SF_LED_SYS_STATE_BAT_3, SF_LED_SYS_STATE_BAT_4, /*SF_LED_SYS_STATE_BAT_LOW,*/ SF_LED_SYS_STATE_GPRS_NO_SIGNAL,/*20*/ SF_LED_SYS_STATE_GPRS_SIGNAL_0, SF_LED_SYS_STATE_GPRS_SIGNAL_1, SF_LED_SYS_STATE_GPRS_SIGNAL_2, SF_LED_SYS_STATE_GPRS_SIGNAL_3, SF_LED_SYS_STATE_GPRS_SIGNAL_4, SF_LED_SYS_STATE_GPRS_SEARCH,/*26*/ SF_LED_SYS_STATE_SIM_ERROR, SF_LED_SYS_STATE_SERVER_FAIL, SF_LED_SYS_STATE_DEBUG_ON, SF_LED_SYS_STATE_DEBUG_OFF, SF_LED_SYS_STATE_RESET, SF_LED_SYS_STATE_USB_IN, SF_LED_SYS_STATE_GOING_TO_PIR, SF_LED_SYS_STATE_EXIT_GO_TO_PIR, SF_LED_SYS_STATE_POWER_OFF, SF_LED_SYS_STATE_PIR_DETECT,/*36*/ SF_LED_SYS_STATE_PIR_NOT_DETECT, SF_LED_SYS_STATE_BAT_0_SLOW, }LedSysState_t; typedef struct LedInfo_s { LedId_t ledId; Ledstate_t ledstate; UINT16 times; UINT32 gpioNum; }LedInfo_t; void sf_led_init(void); void sf_led_go_to_pir(BOOL mode); UINT8 sf_led_set(LedId_t ledId, Ledstate_t ledstate); Ledstate_t sf_led_get(LedId_t ledId); void sf_sys_status_led_set(LedSysState_t ledSysStateId); void sf_trigger_time_led_cb(UINT32 cnt); void sf_led_stop(void);