From b39a40b0191e0a8b155db74e885ff66e17b91896 Mon Sep 17 00:00:00 2001
From: jinlicong <493886250@qq.com>
Date: Thu, 06 Jun 2024 19:25:15 +0800
Subject: [PATCH] 继续完善
---
Function/WirelessRemoteComm/wireless_remote_comm.h | 106 +++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 94 insertions(+), 12 deletions(-)
diff --git a/Function/WirelessRemoteComm/wireless_remote_comm.h b/Function/WirelessRemoteComm/wireless_remote_comm.h
index fc85719..81e38da 100644
--- a/Function/WirelessRemoteComm/wireless_remote_comm.h
+++ b/Function/WirelessRemoteComm/wireless_remote_comm.h
@@ -4,15 +4,34 @@
#include "system_general_para.h"
// Զ����Դ
-#define WRC_PWR_PORT GPIOA
-#define WRC_PWR_PIN GPIO_Pin_7
-
+#define WRC_PWR_PORT GPIOE
+#define WRC_PWR_PIN GPIO_Pin_6
#define WRC_PWR_ON GPIO_SetBits(WRC_PWR_PORT, WRC_PWR_PIN)
#define WRC_PWR_OFF GPIO_ResetBits(WRC_PWR_PORT, WRC_PWR_PIN)
-#define WRC_SEND_NORMAL(__DATA__,__SIZE__) UARTx_SendData_Normal(UART1,__DATA__,__SIZE__)
+//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
+
+#define PWR_3V8_ON GPIO_SetBits(PWR_3V8_O_PORT, PWR_3V8_O_PIN)
+#define PWR_3V8_OFF GPIO_ResetBits(PWR_3V8_O_PORT, PWR_3V8_O_PIN)
+
+
+#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
{
@@ -21,7 +40,7 @@
WRC_CREATE_LINK, //��������
WRC_SEND_DATA, // �������ݸ�Զ��ģ��
WRC_WAIT_REC_DATA, //�ȴ��������ݲ�����
- WRC_CLOSE_PWR //�ر�ģ���Դ
+ WRC_OFF //�ر�ģ���Դ
} WRC_STATUS; // Զ��״̬
@@ -49,6 +68,14 @@
typedef enum
{
+ LINK_NONE = 0U, // Ĭ��ֵ
+ LINK_OK,
+ LINK_ERR,
+} LINK_STATUS; // ��������
+
+
+typedef enum
+{
WRC_TIME_START_NONE = 0U, // Ĭ��ֵ
WRC_TIME_START_INTERVAL, //���
WRC_TIME_START_TIMING, //��ʱ
@@ -56,22 +83,77 @@
} 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
{
+ WRC_START_MEANS wrc_start_flag;
__IO WRC_STATUS wrc_state;
- WRC_START_MEANS wrc_start_flag;
+ __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;
+#define WRC_REC_BUF_LENGTH 256
+typedef struct{
+
+ uint8_t recv_buf[WRC_REC_BUF_LENGTH];
+ uint16_t recv_length;
+ 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{
+ uint8_t net_signal_intensity; //�����ź�ǿ��
+ uint8_t SIM_Type; //SIM������
+ char IMEI[15];
+ char ICCID[20];
+ int SNR;
+}LINK_INFO_T;
-
-
+#pragma pack()
@@ -82,13 +164,13 @@
extern WRC_CTRL_PARA_T wrc_ctrl_para_g;
+extern WRC_UART_PARA_T wrc_uart_para_g;
+extern LINK_INFO_T link_info_g;
-
-
-
+void WRC_PWR_GPIO_Init(void);
void WirelessRemoteCommPro(FUN_START_CTRL_PARA_T * sys_fun_run_ctrl_p);
@@ -99,4 +181,4 @@
-#endif
\ No newline at end of file
+#endif
--
Gitblit v1.9.3