110 lines
4.1 KiB
C
110 lines
4.1 KiB
C
|
#ifndef UWATER_FRAME_FUNC_REPLAY_SY_H
|
|||
|
#define UWATER_FRAME_FUNC_REPLAY_SY_H
|
|||
|
|
|||
|
#include "sys_config.h"
|
|||
|
#if PRODUCT_SY
|
|||
|
#include "UWater_Frame_app.h"
|
|||
|
/**************************************20211025<32><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ********************************************/
|
|||
|
//<2F>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
//ˮ<><CBAE><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݹ<EFBFBD>Լ
|
|||
|
//<2F>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>101<30><31>Ӧ<EFBFBD><D3A6>1<EFBFBD><31> <20>ϱ<EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD>ˮ<EFBFBD><CBAE>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|||
|
#define FM_UPLOAD_FROZEN_DATA_CTRL 0x65 //101
|
|||
|
#define FM_UPLOAD_FROZEN_DATA_REPLY_CTRL 0x01 //1
|
|||
|
|
|||
|
//<2F>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(102,Ӧ<><D3A6>2) <20>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD>ڲɼ<DAB2><C9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_UPLOAD_CYCLE_DATA_CTRL 0x66 //102
|
|||
|
#define FM_UPLOAD_CYCLE_DATA_REPLY_CTRL 0x02 //2
|
|||
|
|
|||
|
//ͻ<><CDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>(103,Ӧ<><D3A6>3) <20>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>Ϊ1<CEAA>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>¼<EFBFBD>ʱ<EFBFBD><CAB1>ʱ<EFBFBD>ϴ<EFBFBD>
|
|||
|
#define FM_SUDDEN_ALARM_UPLOAD_CTRL 0x67 //103
|
|||
|
#define FM_SUDDEN_ALARM_UPLOAD_REPLY_CTRL 0x03 //3
|
|||
|
|
|||
|
//ˮ<><CBAE>Ӧ<EFBFBD><D3A6>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>6<EFBFBD><36>Ӧ<EFBFBD><D3A6>106<30><36> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>ʱ<EFBFBD>䡢<EFBFBD><E4A1A2><EFBFBD>ط<EFBFBD><D8B7>š<EFBFBD><C5A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_PARAMENTER_SETTING_CTRL 0x06 //6
|
|||
|
#define FM_PARAMENTER_SETTING_REPLY_CTRL 0x6A //106
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF>7<EFBFBD><37>Ӧ<EFBFBD><D3A6>107<30><37> <20>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>Ϊ1<CEAA>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>¼<EFBFBD>ʱ<EFBFBD><CAB1>ʱ<EFBFBD>ϴ<EFBFBD>
|
|||
|
#define FM_PARAMENTER_QUERY_CTRL 0x07 //7
|
|||
|
#define FM_PARAMENTER_QUERY_REPLY_CTRL 0x6B //107
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD>ѯ(8,Ӧ<><D3A6>108) <20><>ѯ<EFBFBD>ն<EFBFBD><D5B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1>궳<EFBFBD><EAB6B3><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_FROZEN_DATA_QUERY_CTRL 0x08 //8
|
|||
|
#define FM_FROZEN_DATA_QUERY_REPLY_CTRL 0x6C //108
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD>ѯ(9,Ӧ<><D3A6>109) <20><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>7<EFBFBD><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_CYCLE_DATA_QUERY_CTRL 0x09 //9
|
|||
|
#define FM_CYCLE_DATA_QUERY_REPLY_CTRL 0x6D //109
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD>ݲ<EFBFBD>ѯ<EFBFBD><D1AF>10<31><30>Ӧ<EFBFBD><D3A6>110<31><30> <20><>ѯ<EFBFBD><D1AF>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_ALARM_HISTORY_DATA_QUERY_CTRL 0x0A //10
|
|||
|
#define FM_ALARM_HISTORY_DATA_QUERY_REPLY_CTRL 0x6E //110
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(51,Ӧ<><D3A6>151) <20><><EFBFBD>ն<EFBFBD><D5B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_CLEAR_ALL_DATA_CTRL 0x33 //51
|
|||
|
#define FM_CLEAR_ALL_DATA_REPLY_CTRL 0x97 //151
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(52,Ӧ<><D3A6>152)
|
|||
|
#define FM_RESTORE_FACTORY_SETTING_CTRL 0x34 //52
|
|||
|
#define FM_RESTORE_FACTORY_SETTING_REPLY_CTRL 0x98 //152
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>(71,Ӧ<><D3A6>171) <20>ɳ<EFBFBD><C9B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ı<EFBFBD><C4B1>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɳ<EFBFBD><C9B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
#define FM_DEBUG_INSTRUCTION_CTRL 0x47 //71
|
|||
|
#define FM_DEBUG_INSTRUCTION_REPLY_CTRL 0xAB //171
|
|||
|
|
|||
|
typedef union
|
|||
|
{
|
|||
|
struct
|
|||
|
{
|
|||
|
u8 data0;
|
|||
|
u8 data1;
|
|||
|
} datas_map;
|
|||
|
u8 data_buf[2];
|
|||
|
u16 datas;
|
|||
|
} SY_UNION_2U8TOU16;
|
|||
|
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
u8 head_site; //֡ͷλ<CDB7><CEBB>
|
|||
|
u8 ctrl;
|
|||
|
u8 ack_ctrl;
|
|||
|
SY_UNION_2U8TOU16 len; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>ݳ<EFBFBD><DDB3>ȹ̶<C8B9>2<EFBFBD>ֽ<EFBFBD>16<31><36><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD>ں<EFBFBD>
|
|||
|
u8 end_site; //֡βλ<CEB2><CEBB>
|
|||
|
u8 check_len; //<2F><><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
|
|||
|
u8 sta; //GPRS<52><53><EFBFBD><EFBFBD>״̬0x80<38><30><EFBFBD><EFBFBD> 0x40 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(BIT2 = 0Ӧ<30><D3A6>֡)
|
|||
|
u8 met_type; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>Ϊ<EFBFBD><CEAA>Լ<EFBFBD><D4BC><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>Ϊ0X02
|
|||
|
u8 serial_num0; //<2F><><EFBFBD>к<EFBFBD>
|
|||
|
} STRUCT_FRAME_SY;//<2F>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD>֡<EFBFBD><D6A1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
|
|||
|
u8 up_deal_code_sy(void);
|
|||
|
u8 crack_frame_SY(u16 frame_lenth,u8 *frame_buffer);
|
|||
|
void Frame_ResetDealState_Shenyang(void);
|
|||
|
void Sy_Frame_nb_read_ack(u8* p_send_buf, u16* p_send_len);
|
|||
|
/************************************************<2A>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD>**********************/
|
|||
|
void GetUploadDataResetState_ShenYangUDP(void);
|
|||
|
u8 GetUploadDataCheckIdle_ShenYangUDP(void);
|
|||
|
u8 GetUploadDataCheckTask_ShenYangUDP(void);
|
|||
|
void GetUploadDataMachine_ShenYangUDP(u8 data_step, u8* p_send_buf, u16* p_send_len);
|
|||
|
|
|||
|
/**************************<2A>洢<EFBFBD><E6B4A2><EFBFBD>غ<EFBFBD><D8BA><EFBFBD>***************************************/
|
|||
|
void DataStoreInit(void);
|
|||
|
void DataStoreMachine(void);
|
|||
|
u8 DataStoreIfIdle(void);
|
|||
|
/*****************************************************************************/
|
|||
|
#define MAIN_CONNECT_TYPE NBIOT_CONNECT_UDP1
|
|||
|
#define MAIN_SEND_TYPE SEND_TYPE_UDP1
|
|||
|
#define SLAVE_CONNECT_TYPE NBIOT_CONNECT_UDP2
|
|||
|
#define SLAVE_SEND_TYPE SEND_TYPE_UDP2
|
|||
|
//<2F><><EFBFBD>ϱ<EFBFBD>10<31>룬<EFBFBD><EBA3AC><EFBFBD>ϱ<EFBFBD>5<EFBFBD><35>
|
|||
|
#define COAP_UPLOAD_WAIT_ACK_TIME 100
|
|||
|
#define UDP_UPLOAD_WAIT_ACK_TIME 50
|
|||
|
#define NB_ONLINE_KEEP_TIME 50
|
|||
|
|
|||
|
|
|||
|
#endif
|
|||
|
|
|||
|
#endif
|
|||
|
|
|||
|
|