/******************************************************************************* * File Name : SIM8xx.h * Description : * Created on : 2018Äê5ÔÂ22ÈÕ * Author : ¶Å¼ü *******************************************************************************/ #ifndef FML_EG800_FSM_H_ #define FML_EG800_FSM_H_ /******************************************************************************* * Include Files * *******************************************************************************/ #include "HIDO_TypeDef.h" #include "HIDO_ATLite.h" /******************************************************************************* * Macro * *******************************************************************************/ /******************************************************************************* * Type Definition * *******************************************************************************/ typedef enum { EG800_EVENT_OK = HIDO_AT_EVENT_LAST, EG800_EVENT_CREG, EG800_EVENT_CGREG, EG800_EVENT_CGATT, EG800_EVENT_CSQ, EG800_EVENT_LBS_LOCATION, EG800_EVENT_CPIN, EG800_EVENT_INIT_TIMEOUT, EG800_EVENT_DELAY, EG800_EVENT_POLL, EG800_EVENT_ACK, EG800_EVENT_NEW_SMS, EG800_EVENT_READ_SMS, EG800_EVENT_SMS_DATA, EG800_EVENT_NEW_IP_DATA, /* ÓÐеÄIPÊý¾Ý֪ͨ */ EG800_EVENT_CCID, EG800_EVENT_OPEN, EG800_EVENT_SEND, EG800_EVENT_SEND_OK, EG800_EVENT_SEND_FAIL, EG800_EVENT_CLOSE, EG800_EVENT_READ, EG800_EVENT_CONNECT, EG800_EVENT_QFLST, EG800_EVENT_QFOPEN, EG800_EVENT_QHTTPGET, EG800_EVENT_QHTTPPOST, EG800_EVENT_QHTTPREAD, EG800_EVENT_QHTTPREADFILE, EG800_EVENT_QHTTPPOSTFILE, EG800_EVENT_QGPSLOC, EG800_EVENT_CCLK, EG800_EVENT_QGPSXTRADATA, EG800_EVENT_PDPDEACT, EG800_EVENT_QMTOPEN, EG800_EVENT_QMTCLOSE, EG800_EVENT_QMTCONN, EG800_EVENT_QMTDISC, EG800_EVENT_QMTSUB, EG800_EVENT_QMTUNS, EG800_EVENT_QMTPUBEX, EG800_EVENT_QMTRECV, EG800_EVENT_QMTPING, EG800_EVENT_QMTSTAT, EG800_EVENT_RDY, EG800_EVENT_QTTS, EG800_EVENT_QLTONE, EG800_EVENT_NUM_0, EG800_EVENT_NUM_1, EG800_EVENT_NUM_2, EG800_EVENT_NUM_3, EG800_EVENT_NUM_4, EG800_EVENT_NUM_5, EG800_EVENT_NUM_6, EG800_EVENT_NUM_7, EG800_EVENT_NUM_8, EG800_EVENT_NUM_9, EG800_EVENT_LAST, } E_EG800Event; /******************************************************************************* * Global Variable * *******************************************************************************/ HIDO_FSM_DECLARE(EG800); HIDO_FSM_STATE_FULL_DECLARE(Root, EG800) HIDO_FSM_STATE_FULL_DECLARE(EG800, EG800Init) HIDO_FSM_STATE_FULL_DECLARE(EG800, EG800PowerOff) HIDO_FSM_STATE_FULL_DECLARE(EG800Init, EG800PowerOn) HIDO_FSM_STATE_FULL_DECLARE(EG800Init, EG800WaitReady) HIDO_FSM_STATE_FULL_DECLARE(EG800Init, EG800ATCmdTest) HIDO_FSM_STATE_FULL_DECLARE(EG800Init, EG800WaitSimCardReady) HIDO_FSM_STATE_FULL_DECLARE(EG800Init, EG800ATCmdInit) HIDO_FSM_STATE_FULL_DECLARE(EG800, EG800Idle) HIDO_FSM_STATE_FULL_DECLARE(EG800, EG800Ready) HIDO_FSM_STATE_FULL_DECLARE(EG800Ready, EG800SearchingNetwork) HIDO_FSM_STATE_FULL_DECLARE(EG800Ready, EG800IPInit) HIDO_FSM_STATE_FULL_DECLARE(EG800Ready, EG800TimeSync) HIDO_FSM_STATE_FULL_DECLARE(EG800Ready, EG800IPReady) HIDO_FSM_STATE_FULL_DECLARE(EG800IPReady, EG800IPPoll) HIDO_FSM_STATE_FULL_DECLARE(EG800IPReady, EG800IPCheck) HIDO_FSM_STATE_FULL_DECLARE(EG800IPReady, EG800IPSleep) /******************************************************************************* * Global Function * *******************************************************************************/ HIDO_BOOL EG800_IsIPReady(void); HIDO_BOOL EG800_IsIPIdle(void); #endif /* FML_EG800_FSM_H_ */