forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-06-19 6e3f1f560d618b37ee1a47fa2b0f682b70c3ef1c
Function/WirelessRemoteComm/wireless_remote_comm.h
@@ -10,6 +10,12 @@
#define WRC_PWR_ON          GPIO_SetBits(WRC_PWR_PORT, WRC_PWR_PIN)
#define WRC_PWR_OFF         GPIO_ResetBits(WRC_PWR_PORT, WRC_PWR_PIN)
//3V8ʹÄÜ,ÔÝʱ²»Óã¬Ö±½Ó3V8¿ª¹Ø¿ØÖƼ´¿É
#define PWR_3V8_EN_PORT       GPIOE
#define PWR_3V8_EN_PIN          GPIO_Pin_5
#define PWR_3V8_ENABLE          GPIO_SetBits(PWR_3V8_EN_PORT, PWR_3V8_EN_PIN)
#define PWR_3V8_DIABLE         GPIO_ResetBits(PWR_3V8_EN_PORT, PWR_3V8_EN_PIN)
//3V8¿ª¹Ø
#define PWR_3V8_O_PORT          GPIOE
#define PWR_3V8_O_PIN          GPIO_Pin_7
@@ -18,8 +24,14 @@
#define PWR_3V8_OFF         GPIO_ResetBits(PWR_3V8_O_PORT, PWR_3V8_O_PIN)
#define WRC_SEND_NORMAL(__DATA__,__SIZE__)    do{UARTx_SendData_Normal(UART1,__DATA__,__SIZE__);delay_us(10);WRC_RX_DMA_CH0_reload();}while(0)
#define WRC_UART_SEND(__DATA__,__SIZE__)    do{UARTx_SendData_Normal(WRC_UARTX,__DATA__,__SIZE__);delay_us(10);WRC_RX_DMA_CH3_Init();}while(0)
#define   WRC_MODULE_CMD_OPEN         0x1B
#define   WRC_MODULE_CMD_LINK_STATUS_ACK         0x41
#define   WRC_MODULE_CMD_DATA_UP   0x67
#define   WRC_MODULE_CMD_DATA_RECV   "+R"
typedef enum
{
@@ -28,7 +40,7 @@
   WRC_CREATE_LINK,  //´´½¨Á´½Ó
   WRC_SEND_DATA,    // ·¢ËÍÊý¾Ý¸øÔ¶´«Ä£¿é
   WRC_WAIT_REC_DATA,   //µÈ´ý½ÓÊÕÊý¾Ý²¢´¦Àí
   WRC_CLOSE_PWR            //¹Ø±ÕÄ£¿éµçÔ´
   WRC_OFF            //¹Ø±ÕÄ£¿éµçÔ´
} WRC_STATUS;       // Ô¶´«×´Ì¬
@@ -70,6 +82,27 @@
   WRC_TIME_START_TIMING_TIMING, //¼ä¸ôºÍ¶¨Ê±Í¬Ê±ÉúЧ
} WRC_TIME_START_TYPE;       // Ê±¼äÆô¶¯·½Ê½
typedef enum
{
  WRC_ERR_NONE,
   WRC_ERR_PWR = 0x01U,
   WRC_ERR_WAIT_LINK_TIME_OUT,  //ÁªÍø³¬Ê±
   WRC_ERR_WAIT_ACK_TIME_OUT,  //µÈ´ýÏìÓ¦³¬Ê±
   WRC_ERR_SEND_DATA = 0x10U,  //·¢ËÍÊý¾Ý´¦ÀíÒì³£
} WRC_ERR_CODE;       // ´íÎóÂë
#pragma   pack(1)
typedef struct
@@ -77,6 +110,14 @@
   WRC_START_MEANS wrc_start_flag;
  __IO WRC_STATUS wrc_state;
   __IO LINK_STATUS   link_status;
   WRC_ERR_CODE   wrc_err_code;
   ErrorStatus   wrc_result_flag;  //×îÖÕµÄͨѶ½á¹ûÅжϣ¬³õʼÖÃFAIL£¬×îÖÕ¸ù¾ÝЭÒéÈ·Èϱ¾´ÎͨѶÊÇ·ñ³É¹¦
   ErrorStatus   report_result_flag;  //Éϱ¨ÊÇ·ñ³É¹¦±êÖ¾£¬ÓÃÓÚÒ»ÌìÖ®ÄÚÓÐûÓÐÉÏ´«³É¹¦¹ý£¬±Èwrc_result_flag¿íËÉÒ»µã£¬Ö»ÒªÊý¾ÝÉϱ¨ÓÐÏìÓ¦¼´´ú±íÉϱ¨³É¹¦£¬²»¹ÜºóÐøÖ¸Áµ±Ç°ÓнáÊøÖ¡Ò²´ú±í³É¹¦¡£
   uint16_t   time_out_time_sec; //³¬Ê±Ê±¼ä
   __IO   uint16_t   wrc_OFF_cnt;    //Ô¶´«¹Ø±Õ¼ÆÊý,ÏòÉϼÆÊý£¬ÓÃÓÚÑӳٹرյçÔ´¼°Í˳öͨѶÁ÷³Ì
   uint16_t   wrc_restart_num_cnt;  //ÖØ±¨´ÎÊý¼ÆÊý£¬ÏòϼÆÊý
   uint16_t   wrc_restart_time_sec_cnt;  //ÖØ±¨¼ä¸ôʱ¼ä¼ÆÊý£¬ÏòϼÆÊý£¬
  
} WRC_CTRL_PARA_T;
@@ -89,6 +130,14 @@
  FlagStatus recv_flag;
}WRC_UART_PARA_T;
typedef enum
{
   GMS_WORST = 3U,
   GMS_POOR = 10U,
   GMS_GENERAL = 15U,
   GMS_BEST = 25U,
}GPRS_MODULE_SIG;
typedef struct{
@@ -121,7 +170,7 @@
void WRC_PWR_GPIO_Init(void);
void WirelessRemoteCommPro(FUN_START_CTRL_PARA_T * sys_fun_run_ctrl_p);