#ifndef __PARA_H
|
#define __PARA_H
|
|
#include "define_all.h"
|
|
#include "1ADC.h"
|
|
#define FIRMWARE_VER_1 0x0000
|
#define FIRMWARE_VER_2 0x0102
|
#define FIRMWARE_VER_3 0x0407
|
|
#define __UPPER_DATA_ALTER(__LAST__, __NOW__) ((__LAST__ != __NOW__) ? SET : RESET)
|
|
/////////////////////////////////////
|
#define READSUCCESSFULLYTIMES 3
|
#define READFAILEDTIMES 200
|
////////////////////////////////////
|
|
#define PULSE_MODE 0x01
|
#define RS485_MODE 0x02
|
#define RS485_AND_PULSE_MODE 0x03
|
|
|
|
#define ACTIVE 1
|
#define NOACTIVE 0
|
|
#define HOST_COMPUTER_DATA_INDEX 3
|
|
///////////////////Alarm code/////////////////////
|
#define FLOW_LOW_PWR_ALARM_CODE 0x0101
|
#define FLOW_UNDER_VOLTAGE_ALARM_CODE 0x0102
|
#define FLOW_PWR_DOWN_ALARM_CODE 0x0103
|
#define ALKA_PWR_DOWN_ALARM_CODE 0x0104
|
#define LITH_PWR_DOWN_ALARM_CODE 0x0105
|
#define EXTERNAL_PWR_ACCESS_ALARM_CODE 0x0106
|
#define EXTERNAL_PWR_DOWN_ALARM_CODE 0x0107
|
#define ALKA_PWR_LOW_ALARM_CODE 0x0108
|
#define LITH_PWR_LOW_ALARM_CODE 0x0109
|
|
#define PULSE_LINE_DISCONNECTED_ALARM_CODE 0x0201
|
#define FORCED_TO_CLOSE_VALVE_ALARM_CODE 0x0202
|
#define VALVE_OPEN_ALARM_CODE 0x0203
|
#define VALVE_ABNORMAL_ALARM_CODE 0x0204
|
#define VALVE_FORCE_OPEN_ALARM_CODE 0x0205
|
#define PULSE_LINE_MISMATCH_ALARM_CODE 0xfff1
|
#define GAS_LEAK_ALARM_CODE 0x0208
|
|
#define RS485_READ_FLOW_FAILED_ALARM_CODE 0x0301
|
#define RS485_READ_ABNORMAL_SMALL_READING_CODE 0x0302
|
|
#define TEMPERATURE_ABNORMAL_ALARM_CODE 0x0401
|
#define PRESSURE_ABNORMAL_ALARM_CODE 0x0402
|
|
#define AMOUNT_SMALL_ALARM_CODE 0x0501
|
#define AMOUNT_ARREARS_ALARM_CODE 0x0502
|
#define AMOUNT_OVERDRAFT_ALARM_CODE 0x0503
|
|
#define E2RW_READ_ABNORMAL_ALARM_CODE 0x0701
|
#define E2RW_WRITE_ABNORMAL_ALARM_CODE 0x0702
|
|
#define CAP_OPEN_ALARM_CODE 0x0802
|
|
#pragma pack(1)
|
|
//////////////////////////µØÖ··ÖÅä/////////////////////
|
|
#define DeviceAddress_Addr 0x0004
|
#define Tyf_Addr 0x0012 //18
|
#define Ty_Addr 0x0014 //20
|
#define Typ_Addr 0x0016 //22
|
#define Tp_Addr 0x0018 //24
|
|
#define Time1_Flag_Addr 0x001C //28
|
#define SendTiming_Hour_Addr 0x001D //29
|
#define SendTiming_Min_Addr 0x001E //30
|
#define Time2_Flag_Addr 0x001F //31
|
#define SendTiming_Hour2_Addr 0x0020 //32
|
#define SendTiming_Min2_Addr 0x0021 //33
|
#define GPRS_RestartTime_Addr 0x0022 //34
|
#define IP_Addr 0x0028 //40 IP
|
|
#define NumDataStored_Addr 0x0037 //55-56
|
#define DataStoredFlag_Addr 0x003C //60
|
|
#define KVER_ADDR 62
|
#define KEY_ADDR 64 //64-79
|
|
#define REALTIME_CUMULATIVE_GAS_USAGE_ADDR 80
|
#define REALTIME_CUMULATIVE_FEE_USAGE_ADDR 88
|
#define REALTIME_BALANCE_ADDR 96
|
|
//#define BALANCE_Addr 0x0064 //100
|
#define DATA_OBTAIN_TYPE_ADDR 104
|
#define PULSE_COE_ADDR 108
|
#define BILLING_TYPE_ADDR 112
|
#define SINGLE_BILLING_FEE_ADDR 113
|
#define STEP_BILLING_FIRST_ADDR 117
|
#define STEP_BILLING_FEE_FIRST_ADDR 121
|
#define STEP_BILLING_SECOND_ADDR 125
|
#define STEP_BILLING_FEE_SECOND_ADDR 129
|
#define STEP_BILLING_THIRD_ADDR 133
|
#define STEP_BILLING_FEE_THIRD_ADDR 137
|
#define BALANCE_INSUF_ALARM_AMOUNT_ADDR 141
|
#define CREDITS_ADDR 145
|
|
#define METER_TYPE_CODE_ADDR 149
|
|
#define PULSE_WITDH_ADDR 151
|
|
#define ACCOUNT_STATUS_ADDR 155
|
|
#define BAUD_RATE_CODE_ADDR 156
|
#define RS485_PARITY_ADDR 157
|
#define EXP_VOLTAGE_CODE_ADDR 158
|
#define LOW_POWER_ALARM_LINE_ADDR 159
|
#define SLAVE_ADDRESS_ADDR 160
|
|
#define SHOW_BALANCE_FLAG_ADDR 161
|
#define SHOW_PRICE_FLAG_ADDR 162
|
|
#define LCD_LOGO_ADDR 169
|
#define LCD_FLAG_ADDR 170
|
#define LOGO_DISPLAY_FLAG_ADDR 171
|
#define OPEN_VALVE_AUTHORIZE_FLAG_ADDR 172
|
#define OPEN_VALVE_AUTHORIZE_TIME_CNT_ADDRA 173 //173--176 ռ4λ
|
#define VALVE_STATE_ADDR 177
|
#define VALVE_TYPE_ADDR 178
|
|
#define DeviceserialNum1_ADDR 200
|
#define DeviceserialNum2_ADDR 202
|
#define DeviceserialNum3_ADDR 204
|
#define DeviceserialNum4_ADDR 206
|
|
#define HardwareVerSn1_ADDR 208
|
#define HardwareVerSn2_ADDR 210
|
#define HardwareVerSn3_ADDR 212
|
|
#define FirmwareVerSn1_ADDR 214
|
#define FirmwareVerSn2_ADDR 216
|
#define FirmwareVerSn3_ADDR 218
|
|
#define FirmwareCRC_ADDR 220
|
|
#define FirmwareDateyear_ADDR 222
|
#define FirmwareDatemonth_ADDR 224
|
#define FirmwareDateday_ADDR 226
|
#define EquipmentCaliberAndModel_ADDR 228 //É豸¿Ú¾¶ÐͺÅ
|
|
|
//485¶ÁȡУÑéÓõØÖ·ÇøÓò
|
#define RS485_SETTLEMENT_FLAG_ADDR 299 //
|
#define DATA_READABLE_FLAG_ADDR 300 //Êý¾Ý¿É¶Á±êÖ¾£¬0x01±íʾ¸ÃÇøÓò´æÓÐÊý¾Ý£¬¿ÉÓÃ×÷¼Æ·ÑУÑ鼯ËãÓã»·Ç0x01£º±íʾûÓС£¸Ã±ê־ʲôÊÇÇåÓдý¿¼ÂÇ¡£
|
#define SCACC_BIL_ADDR 301 //301- 304 £¬¼Æ·ÑУÑéÓñê¿ö×ÜÁ¿´æ´¢Çøu32
|
#define BALANCE_BIL_ADDR 305 //305- 312 £¬¼Æ·ÑУÑéÓÃÓà¶î´æ´¢Çødouble
|
#define GAS_USAGE_BIL_ADDR 313 //313- 320 £¬¼Æ·ÑУÑéÓÃ×ÜÓÃÆøÁ¿´æ´¢Çødouble
|
#define FEE_USAGE_BIL_ADDR 321 //321- 328 £¬¼Æ·ÑУÑéÓÃ×ÜÓÃÆø½ð¶î´æ´¢Çødouble
|
|
#define TIME_BIL_ADDR 329 //329- 334 £¬»ùÊýʱ¼ä£¬ÄêÔÂÈÕʱ·ÖÃë
|
|
|
#define REALTIME_CUMULATIVE_GAS_USAGE_B_ADDR 350
|
#define REALTIME_CUMULATIVE_FEE_USAGE_B_ADDR 358
|
#define REALTIME_BALANCE_B_ADDR 366
|
|
#define E2RW_READ_ABNORMAL_FLAG_ADDR 375
|
#define E2RW_WRITE_ABNORMAL_FLAG_ADDR 376
|
|
#define VALVE_OPEN_TIMES_ADDR 925 //¿ª·§´ÎÊý925-926
|
#define VALVE_CLOSE_TIMES_ADDR 927 //¹Ø·§´ÎÊý927-928
|
|
#define REALTIME_CUMULATIVE_GAS_USAGE_C_ADDR 970
|
#define REALTIME_CUMULATIVE_FEE_USAGE_C_ADDR 978
|
#define REALTIME_BALANCE_C_ADDR 986
|
|
#define NumStoredLength 750 //´Ë²»ÊǵØÖ·£¬ÊÇÊý¾ÝµÄÌõÊý
|
#define WCACC_addr 0x03E8 //1000-4200
|
#define SCACC_addr 0x1068 //4200-7400
|
#define PRE_addr 0x1CE8 //7400-10600
|
#define TEM_addr 0x2968 //10600-13800
|
#define WCINS_addr 0x35E8 //13800-17000
|
#define SCINS_addr 0x4268 //17000-20200
|
#define SCCor_addr 0x4EE8 //20200-23400
|
|
#define YEAR_addr 0x5B68 //23400-24200
|
#define MONTH_addr 0x5E88 //24200-25000
|
#define DAY_addr 0x61A8 //25000-25800
|
#define HOUR_addr 0x64C8 //25800-26600
|
#define MIN_addr 0x67E8 //26600-27400
|
#define SEC_addr 0x6B08 //27400-28200
|
|
#define BAT_LITH_addr 0x6E28 //28200
|
|
#define BAT_ALKA_addr 0x6E2C //
|
#define BAT_EX_addr 0x6E30 //28208
|
|
#define CUMULATIVE_GAS_USAGE_ADDR 31400
|
#define CUMULATIVE_FEE_USAGE_ADDR 37400
|
#define BALANCE_ADDR 43400 //43400-49400
|
|
/*¼Æ·Ñ²ÎÊýÐ޸ļǼ ±£´æ100Ìõ */
|
#define CURRENT_BIL_RECORD_NUM_ADDR 49990
|
#define BIL_RECORD_FULL_FLAG_ADDR 49992
|
#define FIRST_BIL_RECORD_ADDR 50000
|
|
#define BIL_RECORD_LENGTH 100
|
#define BIL_RECORD_NUM 100
|
|
/*±¨¾¯¼Ç¼£¬±£´æ1000Ìõ*/
|
#define CURRENT_ALARM_RECORD_NUM_ADDR 60000
|
#define ALARM_RECORD_FULL_FLAG_ADDR 60002
|
#define FIRST_ALARM_RECORD_ADDR 60004
|
|
#define ALARM_RECORD_LENGTH 9
|
#define ALARM_RECORD_NUM 1000
|
|
/*ÀÛ»ýÁ¿Ð޸ļǼ£¬±£´æ50Ìõ*/
|
#define CUMULANTS_MODIFY_RECORD_NUM_ADDR 70000
|
#define CUMULANTS_MODIFY_RECORD_FULL_FLAG_ADDR 70002
|
#define FIRST_CUMULANTS_MODIFY_RECORD_ADDR 70004
|
|
#define CUMULANTS_MODIFY_RECORD_LENGTH 50
|
#define CUMULANTS_MODIFY_RECORD_NUM 50
|
|
#define MODBUS_SLAVE_ADDR 75000
|
|
//ÁÙʱ±äÁ¿ ¼Æ·Ñģʽ
|
#define BALANCE_SAVE_TYPE_ADDR 75002
|
|
typedef struct LLJ_data
|
{
|
uint16_t year;
|
uint8_t month;
|
uint8_t date;
|
uint8_t hour;
|
uint8_t min;
|
uint8_t sec;
|
|
float Lith_Battery_V;
|
float Alka_Battery_V;
|
float EX_Battery_V;
|
float Meter_Battery_V;
|
u8 MeterBatVoltagePercent; //·§ÃÅµç³Øµçѹ°Ù·Ö±È
|
float SC_Accumulation;
|
float WC_Accumulation;
|
uint32_t SC_Accumulation_long;
|
uint32_t WC_Accumulation_long;
|
|
double SC_Accumulation_double;
|
double WC_Accumulation_double;
|
|
int16_t SC_Weight_Factor;
|
int16_t WC_Weight_Factor;
|
|
float Temperature;
|
float Pressure;
|
float SC_instant;
|
float WC_instant;
|
|
float KB_battery_Q;
|
|
}LLJ_DATA;
|
|
typedef struct{
|
uint8_t Tyf;
|
uint8_t Tf;
|
uint8_t Typ;
|
uint8_t Tp;
|
uint16_t sampling_Time;
|
uint8_t time1_flag; //0x80,0x00
|
uint8_t sendTiming_hour; // BCD
|
uint8_t sendTiming_min;// BCD
|
uint8_t time2_flag;
|
uint8_t sendTiming_hour2;// BCD
|
uint8_t sendTiming_min2;// BCD
|
uint8_t GPRS_RESTARTTIME;
|
|
uint8_t real_sendTiming_hour;
|
uint8_t real_sendTiming_min;
|
uint8_t real_sendTiming_day;
|
|
uint8_t RTC_sendTiming_hour; //BCD
|
uint8_t RTC_sendTiming_min;
|
uint8_t RTC_sendTiming_day;
|
|
uint8_t AccountStatus; //0x01¿ª»§£¬00Ïú»§»òÕß먦»§¡£
|
uint8_t TestStatus; //²âÊÔ״̬£¬HWID4==1ʱ£¬TestStatus=1;´ËʱÓÃÓÚ³§¼Ò×Ô¼º²âÊÔ£¬²âÊԴ󲿷ֳö³§Ç°ÐèÒª¼ì²âµÄ¹¦ÄÜ¡£
|
uint8_t Hour_Updata_flag;//ʱÖÓ¸üÐÂflag£¬ÓÃÓÚһСʱ¶¨Ê±ÓÃ
|
|
uint8_t Key_Power_Det; //°´¼üµçÔ´¼ì²â±êÖ¾
|
uint8_t Logo_Display_Flag; //°´¼üµçÔ´¼ì²â±êÖ¾
|
// uint8_t EXPower_IR_Det;//ÍâµçÖն˲úÉúºóÐèÒªÑÓ³Ù¼ì²âµçƽÅжÏÊDz»ÊÇÕæµÄ״̬Óб仯
|
|
u16 Sample_Min_Time; //²É¼¯×îСʱ¼ä£¬µ¥Î»Ã룬¼ÓÈëÕâÀïÊÇ20£¬Òâ˼20ÃëÖ®ÄÚÖ»ÄÜÖ´ÐÐÒ»´Î²É¼¯£¬ ·ÀÖ¹20ÄÚ¶à´ÎÑ»·Åжϲɼ¯
|
u16 Sample_Interval; //²É¼¯¼ä¸ô£¬µ¥Î»·ÖÖÓ ÊýÖµ·¶Î§1-1440
|
u16 Send_Interval; //·¢Ëͼä¸ô£¬µ¥Î»·ÖÖÓ ÊýÖµ·¶Î§0-1440, Ϊ0´ú±í²»Óüä¸ô·¢ËÍ
|
|
u8 show_balance_flag;//0ΪÏÔʾ
|
u8 show_price_flag;
|
}DEVICE_PARM;
|
|
//Alarm related
|
typedef struct{
|
uint8_t alarm_l;
|
uint16_t u16AlarmStoreNum;
|
uint8_t u8AlarmStoreFullFlag;
|
|
uint8_t alarm_Sample;
|
uint8_t alarm_PRE;
|
uint8_t alarm_TEM;
|
|
uint8_t alarm_FlowPowerLOW;
|
uint8_t alarm_FlowUnderPower;
|
uint8_t alarm_FlowPowerDOWN;
|
uint8_t alarm_AlkaPowerDOWN;
|
uint8_t alarm_AlkaPowerLOW;
|
uint8_t alarm_LithPowerDOWN;
|
uint8_t alarm_LithPowerLOW;
|
uint8_t alarm_EXPowerIN;
|
uint8_t alarm_EXPowerRemove;
|
|
uint8_t alarm_Pulse_Broken;
|
uint8_t alarm_Pulse_Dismatch;
|
uint8_t alarm_Valve_close;
|
uint8_t alarm_Valve_open;
|
uint8_t alarm_Valve_Abnormal;
|
|
uint8_t alarm_Gas_Leak;
|
uint8_t alarm_Gas_Leak_time;
|
|
uint8_t alarm_Balance_Small;
|
uint8_t alarm_Balance_0;
|
uint8_t alarm_Credits_0;
|
uint16_t alarm_Credits_0Times;
|
|
uint8_t alarm_E2RW_read_abnormal;
|
uint8_t alarm_E2RW_write_abnormal;
|
uint8_t alarm_Cap_OPEN;
|
uint8_t alarm_Valve_Force_Open;
|
float fTempratureLowLimit;
|
float fTempratureHighLimit;
|
float fPressureLowLimit;
|
float fPressureHighLimit;
|
|
uint8_t u8ReadfailedTimes;
|
uint8_t u8ReadSuccessfullyTimes;
|
|
uint8_t alarm_Send_failed_time;
|
uint8_t Data_Send_failed_time;
|
|
uint8_t alarm_Valve_Abnormal_time;
|
uint8_t alarm_RS485_Abnormal_Small_Reading;
|
uint8_t u8PulseBrokenTimes;
|
uint8_t alarm_FlowPowerLOW_time;
|
|
/*LCD warrning flag*/
|
uint8_t alarm_AlkaPowerLow_LCDFLAG;
|
uint8_t alarm_LithPowerLow_LCDFLAG;
|
uint8_t alarm_AlkaPowerDOWN_LCDFLAG;
|
uint8_t alarm_LithPowerDOWN_LCDFLAG;
|
uint8_t alarm_Pulse_Broken_LCDFLAG;
|
uint8_t alarm_Pulse_Dismatch_LCDFLAG;
|
uint8_t alarm_Gas_Leak_LCDFLAG;
|
uint8_t alarm_Sample_LCDFLAG;
|
uint8_t alarm_PRE_LCDFLAG;
|
uint8_t alarm_TEM_LCDFLAG;
|
uint8_t alarm_Balance_Small_LCDFLAG;
|
uint8_t alarm_RS485Cardinalityfree_LCDFLAG;
|
uint8_t alarm_E2RW_read_abnormal_FLAG;
|
uint8_t alarm_E2RW_write_abnormal_FLAG;
|
uint8_t alarm_RS485_Abnormal_Small_Reading_FLAG;
|
uint8_t alarm_Cap_OPEN_LCDFALG;
|
uint8_t alarm_FlowPowerLOW_FLAG;
|
|
|
}SYSTEM_ALARM;
|
|
|
typedef struct{
|
|
//uint16_t u16AlarmRecordNUM;
|
uint16_t u16BilRecordNUM;
|
uint8_t u8BilStoreFullFlag;
|
|
uint16_t u16CumulantsRecordNUM;
|
uint8_t u8CumulantsStoreFullFlag;
|
|
|
}SYSTEM_RECORD;
|
|
|
/*-------------------------------¼Æ·Ñ²ÎÊýÐÅÏ¢--------------------------------*/
|
|
typedef struct parameter_bil
|
{
|
//float fTotal_balance;
|
u8 cDataObtainType; // 0x01:µ¥Âö³åÎÞ485 0x02:µ¥485ÎÞÂö³å 0X03£ºÂö³å + 485
|
u8 u8PulseWidth;
|
float fPulseCoefficient;
|
u8 cBillingType;
|
float fSingleBillingFee;
|
float fStepBilling_First;
|
float fStepBillingFee_First;
|
float fStepBilling_Second;
|
float fStepBillingFee_Second;
|
float fStepBilling_Third;
|
float fStepBillingFee_Third;
|
int s32RechargeAmount;
|
double dRechargeAmount;
|
uint16_t iBalanceInsufAlarmAmount;
|
float fCredits;
|
|
}PARAMETER_BIL;
|
|
/*-------------------------------·§ÃÅÒì³£ÅжÏ--------------------------------*/
|
#define VALVE_ABNORMAL_THRESHOLD 3 //Ôݶ¨·§ÃÅÒì³£Åж¨ãÐֵΪ3·½Á÷Á¿
|
typedef struct valve_abnormal_para
|
{
|
double valveCloseFirstCum; //¹Ø·§Ö®ºóµÚÒ»´Î¼Ç¼µÄÀÛ»ýÁ¿£¬¼Ç¼֮ºó¾Í²»»áÔٱ䣬³ý·ÇÔٴιط§´¥·¢
|
u8 valveCloseFirstFlag;//¹Ø·§Ö®ºóµÚÒ»´Î¼Ç¼±êÖ¾£¬ 1´ú±íÒѾ¼Ç¼£¬0´ú±íûÓмǼ
|
double valveCloseNextCum; //¹Ø·§Ö®ºó½ÓÏÂÀ´µÄ¼Ç¼µÄÀÛ»ýÁ¿£¬»á¸üÐÂ
|
u8 valveCloseNextFlag;//¹Ø·§Ö®ºó½ÓÏÂÀ´µÄ¼Ç¼±êÖ¾£¬ 1´ú±íÒѾ¼Ç¼£¬0´ú±íûÓмǼ
|
|
|
}VALVE_ABNORMAL_PARA;
|
|
|
/*-------------------------------É豸ÐòÁкÅ------------------------------------*/
|
|
//address: 0000~0039
|
typedef struct
|
{ /* Register Type R/W */
|
// uint16 serialNum[4]; /* 0 64bit integer r/w */
|
|
uint16 hardwareVerSn[3]; /* 1 32bit integer r/w */
|
uint16 firmwareVer[3]; /* 6 32bit integer r/w */
|
uint16 firmwareCRC; /* 8 16bit integer r/w */
|
uint16 firmwareVerDate_year; /* 9 32bit integer r/w */
|
uint16 firmwareVerDate_month; /* 9 32bit integer r/w */
|
uint16 firmwareVerDate_day; /* 9 32bit integer r/w */
|
uint8 EquipmentCaliberAndModel; //É豸¿Ú¾¶ÐͺÅ1:DN25, 2:DN32,3:DN40,4:DN50,5:DN80,6:DN100,7:DN150, 8:DN200
|
} deviceSerialNum_t;
|
|
typedef struct
|
{
|
u8 slave_time_flag;
|
u8 slave_addr;
|
}MODBUS_DEV_PARA;
|
|
#pragma pack()
|
|
|
/*-------------------------------É豸ÐòÁкÅ------------------------------------*/
|
|
extern volatile deviceSerialNum_t regDevSerialNum;
|
|
|
|
void arraya_2_arrayb(u8 * aA , u8 * aB, u8 len, u8 mode);
|
uint8_t HexToChar(uint8_t bChar);
|
uint8_t CharToHex(uint8_t bChar);
|
uint8_t Set_parameters(uint8_t dev_or_bil);
|
void parameters_2buff(uint8_t dev_or_bil,uint8_t key);
|
void SendDataToSTM32(void);
|
void calculate_Sample_Time(uint16_t NOW_year,uint8_t NOW_month,uint8_t NOW_day);
|
void calculate_Send_Time(uint16_t NOW_year,uint8_t NOW_month,uint8_t NOW_day) ;
|
void compara_Send_Sample(uint8_t NOW_year,uint8_t NOW_month,uint8_t NOW_day ,uint8_t NOW_hour,uint8_t NOW_min);
|
void Variable_AllInit(void);
|
void UART1_set(void);
|
void Send_ParaUp(void);
|
void Set_Billing_Para(void);
|
void Alarm_record(uint16 AlarmCode);
|
void Alarm_analysis(void);
|
|
void CumulantsRecord(u8 GasModifyFlag,double PreModifyGasValue,u8 FeeModifyFlag,double PreModifyFeeValue);
|
void CumulantsModify(void); //ÀÛ»ýÁ¿ÐÞ¸Ä
|
void Send_Cumulants_Record(u16 num);
|
|
void Send_Bil_Record(u16 num);
|
void Send_Alarm_Record(u16 num);
|
void LeakAlarmLine_Detection(void);//й©±¨¾¯Ïß
|
void PulseLine_Detection(void);
|
void RegisterInit(void);
|
void VerRegisterSet(void); //°æ±¾ºÅÉèÖÃ
|
void VerRegisterRead(void); //°æ±¾ºÅÉèÖÃ
|
void Read_Valce_Para_Up(void);
|
|
|
void BillRecord(void); //¼Æ·Ñ²ÎÊýÐ޸ļǼ
|
void BigSmallSwitch(u8 * aA , u8 len); //Êý×é´óС¶ËÇл»£¬»òÕß½Ð×öÊý×éµ¹Ðò£¬Ä¿Ç°×Ϊ8×Ö½Ú
|
unsigned char HEX2BCD(unsigned char hex_data);
|
unsigned char BCD2HEX(unsigned char bcd_data);
|
void Get_Sample_Send_Interval(void);
|
void Sample_Send_Control(void);
|
void Condition_det(void);
|
|
void Valve_abnormal_judge(void);
|
void dayly_flag_clear(void);
|
|
extern uint16_t Time_For_valve_open;
|
extern uint16_t Time_For_wakeup;
|
extern uint16_t LCD_sleepTime;
|
extern uint8_t LCD_flag;
|
extern uint8_t LOGO_Flag ;
|
extern uint32_t k_index;
|
extern uint8_t flag,begin,LPM3_FLAG;
|
extern int num,sleepTime;
|
extern uint8_t total_dataGroupNum;
|
extern uint8_t yushu;
|
extern uint8_t FirstTimeRunFlag ;
|
|
extern char Debug[150];
|
extern DEVICE_PARM device_Parm;
|
extern PARAMETER_BIL parameter_bil;
|
extern SYSTEM_ALARM system_alarm;
|
extern SYSTEM_RECORD system_record;
|
|
///////////////////////////////
|
|
extern u8 RS485_status,BT_status;
|
|
extern volatile ad_data_s ad_data_g;
|
|
extern volatile LLJ_DATA LLJ_data_g;
|
|
extern u32 Power_ON_cnt;
|
extern u8 Power_ON_flag;
|
|
extern volatile MODBUS_DEV_PARA modbus_dev_para;
|
extern VALVE_ABNORMAL_PARA valve_abnormal_para_g;
|
|
#endif
|