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] 继续完善
---
Soft/system_general_para.h | 197 ++++++++++++++++++++++++++++++++++--------------
1 files changed, 139 insertions(+), 58 deletions(-)
diff --git a/Soft/system_general_para.h b/Soft/system_general_para.h
index d6e2459..8ae0146 100644
--- a/Soft/system_general_para.h
+++ b/Soft/system_general_para.h
@@ -1,6 +1,7 @@
#ifndef _SYSTEM_GENERAL_PARA_H
#define _SYSTEM_GENERAL_PARA_H
#include "define_all.h"
+#include "extern_rtc.h"
/**************************************************
*��Ҫ����һЩͨ�õĺ���������
@@ -23,7 +24,7 @@
DM_HCM_UFG220 = 0x10U, //ȼ����
DM_HCM_UFG620,
DM_HCM_UFG630,
-} DEVICE_MODEL; // �豸�ͺ�
+} DEVICE_TYPE; // �豸�ͺ�
typedef enum
{
@@ -36,15 +37,7 @@
DN25_TYPE,
DN32_TYPE,
DN40_TYPE,
-} CALIBER_MODEL; // �ھ�
-
-typedef enum
-{
- VM_NONE = 0U,
- VM_PENGSHENG, //��ʢ����
- VM_HADE, //���·���
-} VALVE_MODEL; // �����ͺ�
-
+} CALIBER_TYPE; // �ھ�
typedef enum
{
@@ -53,72 +46,154 @@
EM_IFRCT, //һ������Զ�������ն�
EM_SIFRTT, //����ʽ����Զ���ն�
EM_SIFRCT, //��������Զ�������ն�
-} EQUIPMENT_MODEL; // �����ͺ�
+} EQUIPMENT_TYPE; // �����ͺ�
+
typedef enum
{
- VALVE_NONE = 0U,
- VALVE_OP,
- VALVE_CL,
- VALVE_OPENING,
- VALVE_CLOSING,
- VALVE_ERROR,
- VALVE_MISSING = 99U
-} VALVE_STATE_T; // ����״̬����
-
-typedef enum
-{
- VL_UNLOCK = 0U,
- VL_LOCK
-} VALVE_LOCK_STATE_T; // ����״̬����
+ BM_NONE = 0U,
+ BM_DEVICE, // �豸��
+ BM_PLATFORM // ƽ̨��
+} BILLING_MODE_T; // �Ʒ�ģʽ
-
-//ͨ�ýṹ�����
-
-
-
-//�������ʹ�С��
typedef enum
{
LITTLE_ENDIAN = 0U,
BIG_ENDIAN
-} BIG_OR_LITTLE_ENDIAN; // ����״̬����
+} BIG_OR_LITTLE_ENDIAN; //�������ʹ�С��
+
+typedef enum
+{
+ FLOW_METER_CONN_NONE = 0U,
+ FLOW_METER_CONN_PULSE,
+ FLOW_METER_CONN_RS485,
+ FLOW_METER_CONN_RS485_AND_PULSE
+} FLOW_METER_CONN_TYPE; //���������ӷ�ʽ
+
+typedef enum
+{
+ BAUDRATE_1200 = 0U,
+ BAUDRATE_2400 ,
+ BAUDRATE_4800 ,
+ BAUDRATE_9600 ,
+ BAUDRATE_19200 ,
+ BAUDRATE_38400 ,
+ BAUDRATE_56000 ,
+ BAUDRATE_57600 ,
+ BAUDRATE_115200
+} BAUDRATE_CODE; //������
+
+typedef enum
+{
+ PARITY_NONE = 0U,
+ PARITY_ODD ,
+ PARITY_EVEN ,
+
+} PARITY_BIT; //������
+
+typedef enum
+{
+ RS485_START_REASON_NONE = 0U, //����������Ҫִ��
+ RS485_START_REASON_KEY , //����
+ RS485_START_REASON_TIMING, //��ʱ
+ RS485_START_REASON_REPORT, //�ϱ���Ҫ
+ RS485_START_REASON_RECORD, //�����¼��Ҫ���������ϱ���������
+
+} RS485_START_REASON; //485����ԭ��
+
+
+typedef enum
+{
+ LDM_KEY_AWAKEN = 0U, // ��������
+ LDM_ALWAYS_AWAKEN, // ����
+ LDM_FLOW_AWAKEN // ����������
+} LCD_DISPLAY_MODE_T; // LCD��Ļ��ʾģʽ����
+
+
+/*****************ͨ�ýṹ�����******************************/
+typedef struct
+{
+ __IO FlagStatus delay_flag; // ��ʱʱ�䵽��־λ
+ __IO uint16_t delay_time; // ��ʱ����ʱ��
+} DELAY_SEC_TYPE_T; // ��ʱʱ�����ͽṹ��
+
+typedef struct
+{
+
+ DELAY_SEC_TYPE_T wrc_timeout_para; // GPRS��ʱʱ��
+ DELAY_SEC_TYPE_T sys_active_time; // ϵͳ����ʱ��
+ DELAY_SEC_TYPE_T sys_restart_delay_time;// ϵͳ�������ӳ�ʱ��
+ DELAY_SEC_TYPE_T UC_active_time; // ��λ������ʱ��
+} SYS_DELAY_SEC_PARA_T;
+typedef struct
+{
+ __IO FlagStatus start_flag; // ����������־
+ __IO FlagStatus running_flag; // ���������б�־
+} FUN_START_CTRL_T; // ��ʱʱ�����ͽṹ��
+
+
+typedef struct
+{
+ FUN_START_CTRL_T rs485_ctrl_flag;
+ FUN_START_CTRL_T wrc_ctrl_flag;
+ FUN_START_CTRL_T valve_ctrl_flag;
+
+} FUN_START_CTRL_PARA_T; // ��ʱʱ�����ͽṹ��
+
+
+/*****************ͨ�ú�******************************/
#define BCD_2_DECIMAL(__BCD__) ((__BCD__ / 16) * 10 + __BCD__ % 16)
#define DECIMAL_2_BCD(__DECIMAL__) ((__DECIMAL__ / 16) * 10 + __DECIMAL__ % 16)
+/*ÿ��0��*/
+#define DAILY_ZERO ((&sys_clockBCD_g)->hour == 0 && (&sys_clockBCD_g)->min == 0 && (&sys_clockBCD_g)->sec == 0 ? SET : RESET)
+
+// ��С��ת��
+#define BSWAP_16(x) ((x & 0x00ff) << 8) | \
+ ((x & 0xff00) >> 8)
+
+#define BSWAP_32(x) ((x & 0xff000000) >> 24) | \
+ ((x & 0x00ff0000) >> 8) | \
+ ((x & 0x0000ff00) << 8) | \
+ ((x & 0x000000ff) << 24)
+
+
+#define BSWAP_64(x) ((x & 0xff00000000000000) >> 56) | \
+ ((x & 0x00ff000000000000) >> 40) | \
+ ((x & 0x0000ff0000000000) >> 24) | \
+ ((x & 0x000000ff00000000) >> 8) | \
+ ((x & 0x00000000ff000000) << 8) | \
+ ((x & 0x0000000000ff0000) << 24) | \
+ ((x & 0x000000000000ff00) << 40) | \
+ ((x & 0x00000000000000ff) << 56)
+
+/*�ó��ṹ���Աƫ�����ʹ�С*/
+#define OFFSET_OF(type, member) ((size_t) & (((type *)0))->member)
+#define SIZEOF_OF(type, member) (sizeof(((type *)0))->member)
+
+
+// ϵͳͨ���ӳ�ʱ������
+#define __SYS_DELAY_SEC_TIME_SET_(__HANDLE__, __NUMBER__) do{(&sys_delay_sec_para_g)->__HANDLE__.delay_time = __NUMBER__;__SYS_DELAY_SEC_FLAG_CLEAR_(__HANDLE__);}while(0);
+
+// ϵͳͨ���ӳ�ʱ���ȡ
+#define __SYS_DELAY_SEC_TIME_GET_(__HANDLE__) ((&sys_delay_sec_para_g)->__HANDLE__.delay_time)
+
+// ϵͳͨ���ӳٱ�־λget
+#define __SYS_DELAY_SEC_FLAG_GET(__HANDLE__) ((&sys_delay_sec_para_g)->__HANDLE__.delay_flag)
+// ϵͳͨ���ӳٱ�־λ����
+#define __SYS_DELAY_SEC_FLAG_SET_(__HANDLE__) ((&sys_delay_sec_para_g)->__HANDLE__.delay_flag = SET)
+// ϵͳͨ���ӳٱ�־λ���
+#define __SYS_DELAY_SEC_FLAG_CLEAR_(__HANDLE__) ((&sys_delay_sec_para_g)->__HANDLE__.delay_flag = RESET)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-//��־���в���
-typedef struct log_sizhu_run_t
-{
- uint16_t log_count;
- uint32_t log_addr_save;
- uint32_t log_addr_begin;
-
-}LOG_SIZHU_RUN_T;
@@ -134,8 +209,8 @@
//extern uint8_t read_data_buf_C_l[200];
extern __IO FlagStatus sys_run_period; // ϵͳ��������
-
-
+extern SYS_DELAY_SEC_PARA_T sys_delay_sec_para_g; //ϵͳ��ʱ����
+extern FUN_START_CTRL_PARA_T sys_fun_run_ctrl_g; //ϵͳ�������п���
@@ -145,7 +220,7 @@
-int mem_cmp_aray( const void * cs, const void * ct, u32 count );
+//int mem_cmp_aray( const void * cs, const void * ct, u32 count );
uint8_t TwoTimeCompara(uint8_t* TimeBCD1, uint8_t* TimeBCD2);//6�ֽ�BCDʱ���뵱ǰʱ��Ƚϣ���ǰʱ���0����ȷ���1����ǰʱ��С����2�� ���⣬������ʱ���ʽ��ЧҲ����0������������
@@ -153,5 +228,11 @@
//unsigned char HEX2BCD(unsigned char hex_data) ; //HEX??BCD???
void dou26Byte( double data, unsigned char *array );
+FlagStatus IntervalTriggerHandle(sClockBCD sys_clockBCD_in,uint16_t IntervalTime,uint8_t IntervalFirstTimeBCD[2]);
+
+FlagStatus IO_JitterEliminationCheck(GPIO_Type* GPIOx, uint32_t GPIO_Pin,uint16_t delay_time_ms,BitAction bit_status);
+
+int Datecmp(const uint8_t *pDate1, const uint8_t *pDate2);
+
#endif
--
Gitblit v1.9.3