936 lines
29 KiB
Plaintext
936 lines
29 KiB
Plaintext
/*
|
||
*********************************************************************************************************
|
||
* IAR Development Kits
|
||
* on the
|
||
*
|
||
* Nano130
|
||
*
|
||
* Filename : def_data.h
|
||
* Version : V1.00
|
||
* Programmer(s) : Qian Xianghong
|
||
*********************************************************************************************************
|
||
*/
|
||
|
||
#ifndef USER_DEF_DATA_PRESENT
|
||
#define USER_DEF_DATA_PRESENT
|
||
|
||
#include "includes.h"
|
||
|
||
// 豚冀콴츰써뭐
|
||
#pragma anon_unions
|
||
#pragma pack(push, 1)
|
||
|
||
////////////////////////////////////////////////////////////////////////////////////////
|
||
// 鹿苟경굶땍屢극伎할怜콘朞嶝寧몸
|
||
//#define _PRAXAIR_TTS_VER_ // 팹윰옹薑
|
||
//#define _PRAXAIR_DOL_VER_ // 팹윰옹薑맣芚
|
||
//#define _PRAXAIR_TTS_CHARGE_VER_ // 팹윰옹薑념든/미땍받
|
||
//#define _YINGDE_TTS_VER_ // 簞돠
|
||
//#define _YINGDE_DOL_VER_ // 簞돠맣芚
|
||
//#define _YINGDE_TTS_CHARGE_VER_ // 簞돠념든/미땍받
|
||
//#define _LINDE_HTTPS_CHARGE_VER_ // 주돠념든/미땍받
|
||
//#define _LINDE_HTTPS_VER_ // 주돠TTS
|
||
//#define _LINDE_HTTPS_DOL_VER_ // 주돠맣芚
|
||
//#define _MESSER_TTS_VER_ // 첨힘랑
|
||
//#define _MESSER_TTS_CHARGE_VER_ // 첨힘랑
|
||
//#define _FAYEKONG_TTS_VER_ // 랬捻왕
|
||
//#define _FAYEKONG_TTS_CHARGE_VER_ // 랬捻왕념든/미땍받
|
||
//#define _BAOGANG_TTS_VER_ // 괜멀
|
||
//#define _GUANGGANG_TTS_VER_ // 밤멀
|
||
//#define _FUSHIKANG_TTS_VER_ // 말却영
|
||
//#define _ZHONGHAIYOU_BOX_VER_ // 櫓베答받芎-PT1000-3窟
|
||
//#define _BOX_500_2_VER_ // 받芎-PT500-2窟
|
||
//#define _BOX_1000_2_VER_ // 받芎-PT1000-2窟
|
||
//#define _BOX_1000_3_VER_ // 받芎-PT1000-3窟
|
||
//#define _CAOCHE_VER_ // 꾼났
|
||
//#define _LANSHI_CAOCHE_VER_ // 읊柯꾼났
|
||
//#define _LANSHI_TTS_VER_ // 읊柯
|
||
//#define _LANSHI_BOX_1000_3_VER_ // 읊柯받芎-PT1000-3窟
|
||
//#define _LANSHI_TTS_CHARGE_VER_ // 읊柯념든/미땍받
|
||
//#define _LANSHI_TTS_ALARM_VER_ // 읊柯<EC9D8A>밟괩쒸
|
||
//#define _LANSHI_TTS_ANTI_VER_ // 읊柯렝법념
|
||
//#define _LANSHI_TTS_ANTI_SINGLE_VER_ // 읊柯렝법념+데庫
|
||
//#define _LANSHI_TTS_LEAK02_VER_ // 읊柯南큠똑괩쒸
|
||
//#define _CHATE_TTS_VER_ // 꿴景(<E699AF>빵)
|
||
//#define _TRAIN_BOX_VER_ // 屆쨌받芎
|
||
//#define _AOYANG_BOX_VER_ // 걔爛받芎
|
||
// #define _LOCAL_DISP_VER_ // 怜굶뒈鞫刻
|
||
// #define _LOCAL_DISP_1S_VER_ // 怜굶뒈鞫刻(1S꽃섞)
|
||
//#define _LOCAL_ANTI_VER_ // 怜굶뒈鞫刻+렝법념
|
||
// #define _LOCAL_ANTI_SINGLE_VER_ // 怜굶뒈鞫刻+렝법념+데庫
|
||
//#define _ANJIEHUI4_VER_ // 갛쌥삠4덜
|
||
//#define _ANJIEHUI4_ANTI_VER_ // 갛쌥삠4덜+렝법념
|
||
//#define _ANJIEHUI4_PRAXAIR_VER_ // 갛쌥삠4덜+팹윰옹薑
|
||
//#define _ANJIEHUI4_LINDE_VER_ // 갛쌥삠4덜+주돠
|
||
//#define _ANJIEHUI4_JINHONG_VER_ // 갛쌥삠4덜+쏜브
|
||
//#define _ANJIEHUI4_ALARM_VER_ // 갛쌥삠4덜+<2B>밟괩쒸
|
||
//#define _LOCAL_ALARM_VER_ // 굶뒈鞫刻+<2B>밟괩쒸
|
||
//#define _ANJIEHUI4_LINDE_ALARM_VER_ // 갛쌥삠4덜+주돠+<2B>밟괩쒸
|
||
//#define _ANJIEHUI4_TTS_LEAK02_VER_ // 갛쌥삠南큠똑괩쒸
|
||
//#define _DUWAPING_VER_ // 뗘崑틸
|
||
//#define _DUWAPING_LOCAL_VER_ // 뗘崑틸(怜굶뒈鞫刻)
|
||
//#define _DUWAPING_LOCAL_ANTI_VER_ // 뗘崑틸(굶뒈鞫刻+데庫렝법념+菱땡념陋)
|
||
//#define _BRASIL_BOX_VER_ // 것鮫받芎(4~20mA눈먁포)
|
||
// #define _DUWAPING_LANSHI_VER_ // 뗘崑틸(읊柯틱憩)
|
||
//#define _LANSHI_ZNY_HEYUAN_VER_ // 읊柯뵨陶폭竟(ZNY)
|
||
//#define _LEVEL_P2_ALARM_VER_ // 捻貫(멕됴)、崗箕제(멕됴)<EB90B4>밟괩쒸
|
||
//#define _LEVEL_P1_ALARM_VER_ // 捻貫(멕됴)、箕제(멕됴)<EB90B4>밟괩쒸
|
||
//#define _FURUI_TTS_CHARGE_VER_ // 말흩미땍받
|
||
//#define _BASF_MAGNETIC_CHARGE_VER_ // 것薑뤼늚럇겼미땍받
|
||
//#define _PCT_LEVEL_CAOCHE_VER_ // 殮쌈꿎捻貫겟롸궐(꾼났)
|
||
//#define _CIDC_MAIKE_VER_ // 櫓묏鑒俚(찝옹4~20mA뀌箕箕제눈먁포)
|
||
//#define _2ND_420MA_OUT_LEVEL_VER_ // 뒤2쨌4~20mA渴놔捻貫경굶
|
||
//#define _HUIDA_CHARGE_VER_ // 삠댐
|
||
//#define _HUAGONG_BOX_VER_ // 뺏묏받芎
|
||
//#define _ANJIEHUI4_CHAOYANG_VER_ // 갛쌥삠4덜+路헤날捺
|
||
//#define _ANJIEHUI4_R0SEMOUNT_VER_ // 쭈薑촁景눈먁포
|
||
//#define _LNG_LORA_4G_VER_ // LNG-LORA던4G경굶
|
||
//#define _LNG_LORA_LOCAL_VER_ // LNG-LORA꼇던4G경굶
|
||
//#define _LANSHI_ROSEMOUNT_485TEMPR_VER_ // 읊柯쭈薑촁景뀌箕+485侊똑
|
||
#define _TTS_TEMPR_420MA_VER_ // 痰4~20mA돨侊똑눈먁포
|
||
|
||
////////////////////////////////////////////////////////////////////////////////////////
|
||
|
||
////////////////////////////////////////////////////////////////////////////////////////
|
||
// 鹿苟땍屢꼇狼錦맣,譚<EFBC8C>충朞嶝돨顆寧경굶엄땍
|
||
#if defined(_PRAXAIR_DOL_VER_) || defined(_YINGDE_DOL_VER_) || defined(_LINDE_HTTPS_DOL_VER_)
|
||
#define _DOL_VER_ // 맣芚경
|
||
#endif
|
||
#if defined(_BOX_500_2_VER_) || defined(_BOX_1000_2_VER_) || defined(_BOX_1000_3_VER_) || defined(_ZHONGHAIYOU_BOX_VER_) || defined(_BRASIL_BOX_VER_)
|
||
#define _BOX_VER_ // 받芎
|
||
#endif
|
||
#if defined(_TRAIN_BOX_VER_) || defined(_LANSHI_BOX_1000_3_VER_) || defined(_DUWAPING_VER_) || defined(_DUWAPING_LANSHI_VER_) || defined(_AOYANG_BOX_VER_)
|
||
#define _BOX_VER_ // 받芎
|
||
#endif
|
||
#if defined(_HUAGONG_BOX_VER_)
|
||
#define _BOX_VER_ // 받芎
|
||
#endif
|
||
#if defined(_CAOCHE_VER_) || defined(_LANSHI_CAOCHE_VER_) || defined(_PCT_LEVEL_CAOCHE_VER_)
|
||
#define _SEND_GPS_DATA_ // 랙箇뱀샬鑒앴
|
||
#endif
|
||
#if defined(_PRAXAIR_TTS_VER_) || defined(_YINGDE_TTS_VER_) || defined(_LINDE_HTTPS_VER_) || defined(_FAYEKONG_TTS_VER_) || defined(_LANSHI_TTS_VER_)
|
||
#define _LEVEL_SENSOR_ONLY_ // 怜唐뀌箕눈먁포
|
||
#endif
|
||
#if defined(_BOX_VER_) && !defined(_TRAIN_BOX_VER_)
|
||
#define _CELL_LOCATION_ // 샘籃땍貫(瞳GPS땍貫呵겨돨헙워苟)
|
||
#endif
|
||
#ifdef _ANJIEHUI4_CHAOYANG_VER_
|
||
#define _NO_LOCATION_ // 꼇땍貫
|
||
#endif
|
||
#if defined(_PRAXAIR_TTS_VER_) || defined(_PRAXAIR_DOL_VER_) || defined(_PRAXAIR_TTS_CHARGE_VER_) || defined(_ANJIEHUI4_PRAXAIR_VER_)
|
||
#define _PRAXAIR_SERVER_ // 팹윰옹薑륩蛟포
|
||
#endif
|
||
#if defined(_YINGDE_TTS_VER_) || defined(_YINGDE_DOL_VER_) || defined(_YINGDE_TTS_CHARGE_VER_)
|
||
#define _YINGDE_SERVER_ // 簞돠륩蛟포
|
||
#endif
|
||
#if defined(_BAOGANG_TTS_VER_)
|
||
//#define _BAOGANG_SERVER_ // 괜멀륩蛟포
|
||
#define _YINGDE_SERVER_ // 簞돠륩蛟포
|
||
#endif
|
||
#if defined(_LINDE_HTTPS_CHARGE_VER_) || defined(_LINDE_HTTPS_VER_) || defined(_ANJIEHUI4_LINDE_VER_) || defined(_LINDE_HTTPS_DOL_VER_) || defined(_ANJIEHUI4_LINDE_ALARM_VER_)
|
||
#define _LINDE_SERVER_ // 주돠륩蛟포(tcp to praxair)
|
||
#endif
|
||
#ifdef _FUSHIKANG_TTS_VER_
|
||
#define _FUSHIKANG_SERVER_ // 말却영륩蛟포
|
||
#endif
|
||
#ifdef _ZHONGHAIYOU_BOX_VER_
|
||
#define _ZHONGHAIYOU_SERVER_ // 櫓베答륩蛟포(mqtt)
|
||
#endif
|
||
#if defined(_MESSER_TTS_VER_) || defined(_MESSER_TTS_CHARGE_VER_)
|
||
#define _MESSER_SERVER_ // 첨힘랑륩蛟포
|
||
#endif
|
||
#if defined(_DUWAPING_LANSHI_VER_) || defined(_LANSHI_TTS_VER_) || defined(_LANSHI_CAOCHE_VER_) || defined(_LANSHI_BOX_1000_3_VER_)
|
||
#define _LANSHI_SERVER_ // 읊柯륩蛟포
|
||
#endif
|
||
#if defined(_LANSHI_TTS_CHARGE_VER_) || defined(_LANSHI_TTS_ALARM_VER_) || defined(_LANSHI_TTS_ANTI_VER_) || defined(_LANSHI_TTS_ANTI_SINGLE_VER_)
|
||
#define _LANSHI_SERVER_ // 읊柯륩蛟포
|
||
#endif
|
||
#if defined(_LANSHI_TTS_LEAK02_VER_) || defined(_LANSHI_ZNY_HEYUAN_VER_) || defined(_CIDC_MAIKE_VER_) || defined(_LANSHI_ROSEMOUNT_485TEMPR_VER_)
|
||
#define _LANSHI_SERVER_ // 읊柯륩蛟포
|
||
#endif
|
||
#ifdef _TRAIN_BOX_VER_
|
||
#define _TRAIN_SERVER_ // 屆쨌받芎륩蛟포
|
||
#endif
|
||
#ifdef _AOYANG_BOX_VER_
|
||
#define _AOYANG_SERVER_ // 걔爛륩蛟포
|
||
#endif
|
||
#if defined(_FURUI_TTS_CHARGE_VER_)
|
||
#define _FURUI_SERVER_ // 말흩륩蛟포
|
||
#endif
|
||
#ifdef _HUIDA_CHARGE_VER_
|
||
#define _HUIDA_SERVER_ // 삠댐륩蛟포
|
||
#endif
|
||
#ifdef _HUAGONG_BOX_VER_
|
||
#define _HUAGONG_SERVER_ // 뺏묏받芎륩蛟포
|
||
#endif
|
||
#ifdef _ANJIEHUI4_CHAOYANG_VER_
|
||
#define _CHAOYANG_SERVER_ // 路헤날捺륩蛟포
|
||
#endif
|
||
#if defined(_PRAXAIR_SERVER_) || (defined(_LINDE_SERVER_) && !defined(_ANJIEHUI4_LINDE_ALARM_VER_)) || defined(_CHATE_TTS_VER_) || defined(_BAOGANG_SERVER_) || defined(_CIDC_MAIKE_VER_)
|
||
#define _DISP_MMWC_ONLY_ // 怜鞫刻뀌箕(mmWC)
|
||
#endif
|
||
#define _USE_PT100_SENSOR_ // 痰PT100侊똑눈먁포(宮뚤4~20mA侊똑눈먁포)
|
||
#if defined(_BRASIL_BOX_VER_) || defined(_TTS_TEMPR_420MA_VER_)
|
||
#undef _USE_PT100_SENSOR_ // 4~20mA侊똑눈먁포
|
||
#endif
|
||
#if defined(_DUWAPING_VER_) || defined(_DUWAPING_LOCAL_VER_) || defined(_DUWAPING_LANSHI_VER_) || defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#undef _USE_PT100_SENSOR_ // 4~20mA侊똑눈먁포
|
||
#endif
|
||
#ifdef _BOX_500_2_VER_
|
||
#define _PT100_MULTI_ 5 // 든羸렴댕굡鑒(PT100/PT500/PT1000)
|
||
#else
|
||
#define _PT100_MULTI_ 10 // 든羸렴댕굡鑒(PT100/PT500/PT1000)
|
||
#endif
|
||
#if !defined(_BOX_500_2_VER_) && !defined(_BOX_1000_2_VER_)
|
||
#define _PT100_3LINE_ // 힛窟齡든羸꿎좆
|
||
#endif
|
||
#define _DIFF_RESIST_ // 4G鹿빈돨경굶떼角뀌롸꿎좆든羸
|
||
#if defined(_DUWAPING_VER_) || defined(_DUWAPING_LOCAL_VER_) || defined(_DUWAPING_LANSHI_VER_) || defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#define _USE_CAPACITY_SENSOR_
|
||
#define _USE_PCAP04_CHIP_
|
||
#endif
|
||
|
||
#if defined(_LOCAL_DISP_VER_) || defined(_LOCAL_ANTI_VER_) || defined(_DUWAPING_LOCAL_VER_) || defined(_LOCAL_DISP_1S_VER_) || defined(_LOCAL_ANTI_SINGLE_VER_) || defined(_LOCAL_ALARM_VER_)
|
||
#define _LOCAL_DISP_ONLY_ // 怜唐굶뒈鞫刻
|
||
#endif
|
||
#if defined(_DUWAPING_LOCAL_ANTI_VER_) || defined(_LNG_LORA_LOCAL_VER_)
|
||
#define _LOCAL_DISP_ONLY_ // 怜唐굶뒈鞫刻
|
||
#endif
|
||
#if defined(_LOCAL_DISP_1S_VER_)
|
||
#define _LOCAL_DISP_1S_ // 굶뒈鞫刻1취꽃섞
|
||
#endif
|
||
#if defined(_LOCAL_ANTI_VER_) || defined(_ANJIEHUI4_ANTI_VER_) || defined(_LANSHI_TTS_ANTI_VER_) || defined(_LOCAL_ANTI_SINGLE_VER_) || defined(_LANSHI_TTS_ANTI_SINGLE_VER_)
|
||
#define _ANTI_OVER_FILL_ // 렝법념
|
||
#endif
|
||
#if defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#define _ANTI_OVER_FILL_ // 렝법념
|
||
#endif
|
||
#if defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#define _USE_PCT_CAP_ // 객藤낀든휭渴놔겟롸궐
|
||
#endif
|
||
#if defined(_LOCAL_ANTI_SINGLE_VER_) || defined(_LANSHI_TTS_ANTI_SINGLE_VER_) || defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#define _ANTI_SINGLE_CTRL_ // 렝법념데庫든늚랫
|
||
#endif
|
||
#if defined(_DUWAPING_LOCAL_ANTI_VER_)
|
||
#define _ANTI_AUTO_FILL_ // 菱땡념陋
|
||
#endif
|
||
#if defined(_LANSHI_TTS_ALARM_VER_) || defined(_ANJIEHUI4_ALARM_VER_) || defined(_ANJIEHUI4_LINDE_ALARM_VER_) || defined(_LANSHI_ZNY_HEYUAN_VER_) || defined(_LOCAL_ALARM_VER_)
|
||
#define _SOUND_ALARM_ // <20>밟괩쒸
|
||
#endif
|
||
#if defined(_LANSHI_TTS_LEAK02_VER_) || defined(_ANJIEHUI4_TTS_LEAK02_VER_)
|
||
#define _USE_O2_LEAK_ // O2큠똑눈먁포
|
||
#endif
|
||
#if defined(_LANSHI_TTS_LEAK02_VER_) || defined(_LANSHI_ZNY_HEYUAN_VER_) || defined(_ANJIEHUI4_TTS_LEAK02_VER_)
|
||
#define _LEAK_SOUND_ALARM_ // 橘쨋<E6A998>밟괩쒸
|
||
#endif
|
||
#if defined(_LEVEL_P2_ALARM_VER_) || defined(_LEVEL_P1_ALARM_VER_)
|
||
#define _SOUND_ALARM_ // 捻貫멕됴<EBA995>밟괩쒸
|
||
#define _PRESS_SOUND_ALARM_ // 箕제멕<ECA09C>밟괩쒸
|
||
#define _LOW_PRESS_SOUND_ALARM_ // 箕제됴<ECA09C>밟괩쒸
|
||
#endif
|
||
#ifdef _PCT_LEVEL_CAOCHE_VER_
|
||
#define _USE_PCT_LEVEL_ // 殮쌈꿎捻貫겟롸궐
|
||
#endif
|
||
|
||
// MQTT/HTTPS/HTTP륩蛟포죗깊
|
||
extern const char SERVER_URLs[][100];
|
||
////////////////////////////////////////////////////////////////////////////////////////
|
||
|
||
// 굶샙寮겼뵀
|
||
extern const uint8_t CONFIG_BOARD_SELF;
|
||
|
||
// 닸뇨깃街="LS"
|
||
#define CONFIG_MARK_LS (('S' << 8) | 'L')
|
||
// 끓틔깃街="CY"
|
||
#define CONFIG_PRODUCT_CY (('Y' << 8) | 'C')
|
||
|
||
// 놓迦뺏깃街
|
||
#define CONFIG_FLAG_NOT_INITED 0
|
||
#define CONFIG_FLAG_INITED 1
|
||
|
||
// 寮겼깃街
|
||
#define CONFIG_BOARD_SINGLE 0 // 寧竟駕
|
||
#define CONFIG_BOARD_SAMPLE 1
|
||
#define CONFIG_BOARD_POWER 2
|
||
#define CONFIG_BOARD_DISPLAY 3
|
||
#define CONFIG_BOARD_BLUETOOTH 4
|
||
|
||
// 鑒앴긍쯤(DC)
|
||
#define CAN_DC_NONE 0
|
||
#define CAN_DC_BOTTLE_CONFIG 1
|
||
#define CAN_DC_SENSOR_CONFIG 2
|
||
#define CAN_DC_DATA_CONFIG 3
|
||
#define CAN_DC_DISPLAY_CONFIG 4
|
||
#define CAN_DC_SAMPLE_SYSINFO 5
|
||
#define CAN_DC_POWER_SYSINFO 6
|
||
#define CAN_DC_DISPLAY_SYSINFO 7
|
||
#define CAN_DC_BLUETOOTH_SYSINFO 8
|
||
#define CAN_DC_DTU_DATA 9
|
||
#define CAN_DC_SAMPLE_DATA 10
|
||
#define CAN_DC_ADC_DATA 11
|
||
|
||
// 繫列츱즈
|
||
#define CAN_NOTIFY_RESET 0
|
||
#define CAN_NOTIFY_UPGRADE 1
|
||
#define CAN_NOTIFY_UPDATE 2
|
||
#define CAN_NOTIFY_SLEEP 3
|
||
#define CAN_NOTIFY_PING 4
|
||
#define CAN_NOTIFY_SAMPLE 5
|
||
|
||
// 뇨받잚謹
|
||
#define BOTTLE_TYPE_STAND 0 // 접駕
|
||
#define BOTTLE_TYPE_LYING 1 // 塊駕
|
||
#define BOTTLE_TYPE_SPHERICAL 2 // 헷謹
|
||
|
||
#define SENSOR_STATUS_NORMAL 0x00 // 攣끽榴檄
|
||
#define SENSOR_STATUS_NOCONNECT 0x01 // BIT0
|
||
#define SENSOR_STATUS_UNDERFLOW 0x02 // BIT1
|
||
#define SENSOR_STATUS_OVERFLOW 0x04 // BIT2
|
||
#define SENSOR_STATUS_FULL 0x80 // BIT7
|
||
|
||
// 꿎좆렘駕
|
||
#define MEASURE_DPRESS 0
|
||
#define MEASURE_WEIGHT 1
|
||
|
||
// 鞫刻데貫
|
||
#define DISP_UNIT_METRIC 0 // 무齡데貫
|
||
#define DISP_UNIT_ENGLISH 1 // 亶齡데貫
|
||
|
||
// 鞫刻친駕
|
||
#define DISP_MODE_DPRESS 0 // 꼇鞫刻휭생뵨路좆
|
||
#define DISP_MODE_ALL 1 // 鞫刻휭생뵨路좆
|
||
#define DISP_MODE_L 2 // 鞫刻휭생, 꼇鞫刻路좆
|
||
#define DISP_MODE_KG 3 // 鞫刻路좆, 꼇鞫刻휭생
|
||
|
||
// 펜탉叫駱렘駕
|
||
#define PARITY_NONE 'n'
|
||
#define PARITY_SPACE 's'
|
||
#define PARITY_MARK 'm'
|
||
#define PARITY_ODD 'o'
|
||
#define PARITY_EVEN 'e'
|
||
|
||
// 頓檀<E9A093>貢쭹잚謹
|
||
#define NET_TYPE_2G '2'
|
||
#define NET_TYPE_3G '3'
|
||
#define NET_TYPE_4G '4'
|
||
#define NET_TYPE_GPRS 'G'
|
||
#define NET_TYPE_CDMA 'C'
|
||
#define NET_TYPE_EDGE 'E'
|
||
|
||
// 廬왕눈먁포榴檄
|
||
#define VACUUM_STATUS_FAULT 0 // 믐崍
|
||
#define VACUUM_STATUS_OK 1 // 攣끽
|
||
#define VACUUM_STATUS_COMM_FAULT 255 // 繫祇믐崍
|
||
|
||
// 橘쨋괩쒸포榴檄
|
||
#define LEAK_STATUS_OK 0 // 攣끽
|
||
#define LEAK_STATUS_FAULT 1 // 믐崍
|
||
#define LEAK_STATUS_A1_ALARM 2 // 됴掘괩쒸
|
||
#define LEAK_STATUS_A2_ALARM 3 // 멕掘괩쒸
|
||
#define LEAK_STATUS_COMM_FAULT 255 // 繫祇믐崍
|
||
|
||
// 橘짤괩쒸포잚謹(객貫拿쯤)
|
||
#define LEAK_TYPE_SWITCH 1 // 역밑謹
|
||
#define LEAK_TYPE_CURRENT 2 // 든직謹
|
||
#define LEAK_TYPE_MODBUS 4 // Modubs悧窟謹
|
||
|
||
// 륩蛟포잚謹
|
||
#define SERVER_PROTOCOL_TCP 0 // TCP<43>눈
|
||
#define SERVER_PROTOCOL_MQTT 1 // MQTT<54>눈
|
||
#define SERVER_PROTOCOL_HTTPS 2 // HTTPS<50>눈
|
||
#define SERVER_PROTOCOL_HTTP 3 // HTTP<54>눈
|
||
#define SERVER_PROTOCOL_TRAIN 4 // 屆쨌받芎<EBB09B>눈
|
||
#define SERVER_PROTOCOL_AOYANG 5 // 걔爛葵累<E891B5>눈
|
||
#define SERVER_PROTOCOL_FURUI 7 // 말흩葵累<E891B5>눈
|
||
#define SERVER_PROTOCOL_HUIDA 8 // 삠댐葵累<E891B5>눈
|
||
#define SERVER_PROTOCOL_CHAOYANG 9 // 路헤날捺(攣쫠무鱇)<E9B187>눈
|
||
|
||
// 끓틔잚깎
|
||
#define PRODUCT_CLASS_LEVEL 0 // 捻貫셕
|
||
#define PRODUCT_CLASS_H2PRESS 1 // 향箕제
|
||
|
||
// 땍貫렘駕
|
||
#define LOCATE_TYPE_NONE 0 // 轟땍貫
|
||
#define LOCATE_TYPE_GPS 1 // 括槿땍貫
|
||
#define LOCATE_TYPE_BS 2 // 샘籃땍貫
|
||
|
||
// 離댕뻠녑혐댕鬼
|
||
#define DATA_BUFF_SIZE 128
|
||
|
||
// 냔路눈먁포꽝鑒
|
||
typedef struct
|
||
{
|
||
uint32_t lowRange; // 苟좆넋
|
||
uint32_t highRange; // <20>좆넋
|
||
uint32_t zeroValue; // 叫쥐令
|
||
uint32_t fullValue; // 叫찮令
|
||
} weight_param_t;
|
||
|
||
// 뀌箕/箕제눈먁포꽝鑒
|
||
typedef struct
|
||
{
|
||
uint16_t lowRange; // 苟좆넋
|
||
union
|
||
{
|
||
uint16_t highRange; // <20>좆넋
|
||
struct
|
||
{
|
||
unsigned highRangeX10 : 15; // 렴댕죄10굡돨좆넋
|
||
unsigned ishighRangeX10 : 1; // 좆넋角뤠렴댕죄10굡
|
||
};
|
||
};
|
||
uint16_t zeroValue; // 叫쥐令
|
||
uint16_t fullValue; // 叫찮令
|
||
} press_param_t;
|
||
|
||
// 든휭K令(叫硫긴箇포돨꿎좆溝固),섟눈먁포꽝鑒(뒀든휭,찮든휭)
|
||
typedef struct
|
||
{
|
||
uint16_t c1ADC; // 든휭c1깃땍ADC令
|
||
uint16_t c2ADC; // 든휭c2깃땍ADC令
|
||
uint16_t baseC; // 뒀든휭(pF)
|
||
uint16_t refC; // 藤낀든휭(pF)
|
||
} capacity_param_t;
|
||
|
||
// 侊똑눈먁포꽝鑒
|
||
typedef struct
|
||
{
|
||
int16_t lowRange; // 苟좆넋
|
||
int16_t highRange; // <20>좆넋
|
||
uint16_t zeroValue; // 叫쥐令
|
||
uint16_t fullValue; // 叫찮令
|
||
} tempr_param_t;
|
||
|
||
// PT100껄든羸侊똑눈먁포꽝鑒
|
||
typedef struct
|
||
{
|
||
int16_t calibrateT; // 叫硫侊똑,렴댕10굡
|
||
int16_t calibrateR; // 叫硫든羸,렴댕10굡
|
||
uint16_t zeroValue; // 叫쥐令(-200→돨ADC令)(PT100譚叫硫令셕炬잿쬠令)
|
||
uint16_t fullValue; // 叫찮令(80→돨ADC令) (PT100譚叫硫令셕炬잿쬠令)
|
||
} pt100_param_t;
|
||
|
||
// 廬왕셕鑒앴
|
||
typedef struct
|
||
{
|
||
uint8_t staVacuum; // 廬왕셕榴檄
|
||
unsigned : 8;
|
||
uint16_t lifeVacuum; // 廬왕셕賈痰쾨掘
|
||
float vacuum; // 廬왕똑
|
||
float rateVacuum; // 짤렴폭醵쪽
|
||
} vacuum_data_t;
|
||
|
||
// 橘쨋괩쒸포鑒앴
|
||
typedef struct // size = 4
|
||
{
|
||
uint8_t typeLeak; // 橘쨋괩쒸포잚謹
|
||
uint8_t staLeak; // 橘쨋괩쒸포榴檄
|
||
uint16_t concentrations; // 폭竟큠똑
|
||
} leak_data_t;
|
||
|
||
// 직좆셕鑒앴
|
||
typedef struct // size = 22
|
||
{
|
||
uint8_t nM3[6]; // 깃워竟생悧좆(BCD쯤,렴댕100굡)
|
||
uint8_t nM3_h[4]; // 깃워직좆(BCD쯤,렴댕100굡)
|
||
uint8_t M3_h[4]; // 묏워직좆(BCD쯤,렴댕100굡)
|
||
uint8_t tempr[4]; // 侊똑(BCD쯤,렴댕100굡,뒤寧俚쌘槨륜뵀: 80H 槨맏,00H 槨攣)
|
||
uint8_t pressure[4]; // 箕제(BCD쯤,렴댕100굡)
|
||
} flow_data_t;
|
||
|
||
typedef union
|
||
{
|
||
uint8_t status;
|
||
struct
|
||
{
|
||
unsigned notConnect : 1; // 젯쌈榴檄
|
||
unsigned underFlow : 1; // 角뤠苟淚놔
|
||
unsigned overFlow : 1; // 角뤠<E8A792>淚놔
|
||
unsigned : 4;
|
||
unsigned full : 1; // 角뤠찮
|
||
};
|
||
} sensor_status_t;
|
||
|
||
// 경굶뵀
|
||
typedef struct
|
||
{
|
||
uint8_t major; // 寮경굶뵀
|
||
uint8_t minor; // 늴경굶뵀
|
||
} version_t;
|
||
|
||
// 휑퍅
|
||
typedef struct
|
||
{
|
||
uint8_t year;
|
||
uint8_t month;
|
||
uint8_t day;
|
||
} date_t;
|
||
|
||
// 珂쇌
|
||
typedef struct
|
||
{
|
||
uint8_t hour;
|
||
uint8_t minute;
|
||
uint8_t second;
|
||
} time_t;
|
||
|
||
// 휑퍅珂쇌
|
||
typedef struct
|
||
{
|
||
uint8_t year;
|
||
uint8_t month;
|
||
uint8_t day;
|
||
uint8_t hour;
|
||
uint8_t minute;
|
||
uint8_t second;
|
||
} date_time_t;
|
||
|
||
// 토零혐庫斤口
|
||
typedef struct
|
||
{
|
||
uint16_t mark; //="LS",닸뇨깃街
|
||
uint16_t product; //="CY",끓틔깃街
|
||
uint8_t DC; // 鑒앴긍쯤
|
||
unsigned : 8;
|
||
version_t ver; // 닸뇨목駕경굶뵀
|
||
} config_header_t;
|
||
|
||
// 토零혐1-뇨받꽝鑒
|
||
typedef struct
|
||
{
|
||
config_header_t header; // 庫斤口
|
||
uint16_t serverVer; // 륩蛟포꽝鑒경굶뵀
|
||
uint8_t updateFlag; // 꽝鑒뫘劤깃羚
|
||
uint8_t addr; // 繫斤뒈囹
|
||
uint8_t PSN[6]; // PSN
|
||
uint8_t type; // 뇨받잚謹
|
||
uint8_t source; // 捻都
|
||
uint16_t len; // 途料竟낀똑
|
||
uint16_t diameter; // 코쓺
|
||
uint16_t lenExtra; // 殮긋룐庫낀똑
|
||
float density[5]; // 몹捻都돨궐路, 데貫g/cm3
|
||
uint8_t chargePct; // 념陋궐
|
||
uint8_t measureType;// 꿎좆렘駕
|
||
uint16_t fullPct; // 찮捻貫겟롸궐
|
||
uint16_t priPct; // 밑숩捻貫겟롸궐
|
||
uint16_t orderPct; // 땐새捻貫겟롸궐
|
||
uint16_t emptyPct; // 왕捻貫겟롸궐
|
||
uint32_t planMount; // 첼휑셕뺍痰좆
|
||
uint32_t predictMount; // 첼휑渡꿎痰좆
|
||
uint16_t warnVolt; // 든箕괩쒸됴듐: 10mV
|
||
uint16_t warnVoltH; // 든箕괩쒸멕듐: 10mV
|
||
uint16_t warnPress; // 箕제괩쒸됴듐: KPa
|
||
uint16_t warnPressH; // 箕제괩쒸멕듐: KPa
|
||
uint32_t options; // 꽝鑒역밑
|
||
uint32_t ts; // 꽝鑒珂쇌늑
|
||
unsigned dispMode : 2; // 鞫刻친駕
|
||
unsigned hideVacu : 1; // 茶꾜廬왕鞫刻
|
||
unsigned : 5;
|
||
unsigned : 8;
|
||
union // size = 6
|
||
{
|
||
struct // Praxair
|
||
{
|
||
uint16_t floorLevel; // praxair: 捻좆괩쒸苟掘
|
||
uint16_t span; // praxair: 捻좆긴뺏괩쒸쳔掘
|
||
uint16_t spanPeriod; // praxair: 捻좆긴뺏괩쒸珂쇌
|
||
};
|
||
struct // Others
|
||
{
|
||
uint16_t warnVacuumH; // 侊똑괩쒸<EAB4A9>掘
|
||
int16_t warnTempr; // 侊똑괩쒸苟掘
|
||
int16_t warnTemprH; // 侊똑괩쒸<EAB4A9>掘
|
||
};
|
||
};
|
||
// 屆쨌받芎劤藤토零
|
||
struct // size = 18
|
||
{
|
||
char tankId[12]; // 섞陋芎긍뵀(11貫ASCII쯤)
|
||
uint32_t moduleId; // 친욥Id
|
||
uint16_t appId; // 壇痰Id
|
||
} train;
|
||
union
|
||
{
|
||
uint8_t reserved[20];
|
||
uint16_t densityExt[8]; // 몹捻都돨궐路(劤藤썽醴, 데貫kg/m3)
|
||
};
|
||
uint16_t crc;
|
||
} config_bottle_t;
|
||
|
||
// 토零혐2-눈먁포꽝鑒
|
||
typedef struct
|
||
{
|
||
config_header_t header; // 庫斤口
|
||
unsigned : 8;
|
||
unsigned : 8;
|
||
weight_param_t sensorWeight; // 냔路눈먁포
|
||
|
||
union
|
||
{
|
||
press_param_t sensorDPress; // 뀌箕눈먁포
|
||
capacity_param_t sensorCap; // 든휭눈먁포꽝鑒
|
||
};
|
||
press_param_t sensorPress; // 箕제눈먁포
|
||
press_param_t sensorEPress[3];// 윈嵐箕제눈먁포
|
||
union
|
||
{
|
||
tempr_param_t sensorMTempr[3];// 윈嵐侊똑눈먁포-4~20mA
|
||
pt100_param_t sensorPTempr[3];// 윈嵐侊똑눈먁포-PT100
|
||
};
|
||
uint8_t sensor; // 눈먁포蘆잚 0-뗘崑틸,1-났潼틸櫓든휭
|
||
uint8_t reserved[35];
|
||
uint16_t crc;
|
||
} config_sensor_t;
|
||
|
||
// 토零혐3-鑒앴꽝鑒
|
||
typedef struct
|
||
{
|
||
config_header_t header; // 庫斤口
|
||
unsigned : 8;
|
||
unsigned : 8;
|
||
char reserved[8];
|
||
char server[30]; // 鑒앴륩蛟포
|
||
int16_t port; // 鑒앴똥왯
|
||
union
|
||
{
|
||
struct
|
||
{
|
||
char gpsServer[30]; // 뱀샬륩蛟포
|
||
int16_t gpsPort; // 뱀샬똥왯
|
||
};
|
||
struct // 屆悧돨륩蛟포
|
||
{
|
||
char mtupServer[30]; // 屆悧륩蛟포
|
||
int16_t mtupPort; // 屆悧똥왯
|
||
} train;
|
||
};
|
||
uint16_t intervalSample; // 鑒앴꽃섞鷺퍅
|
||
uint32_t intervalTrans; // 鑒앴<E99192>괩鷺퍅
|
||
uint16_t intervalGPS; // 貫零꽃섞鷺퍅
|
||
uint16_t intervalGPSTrans; // 貫零<E8B2AB>괩鷺퍅
|
||
int8_t timeLag; // 珂뀌,칵훰槨+8
|
||
unsigned : 8;
|
||
char upgServer[30]; // <20>섬륩蛟포
|
||
int16_t upgPort; // <20>섬똥왯
|
||
uint16_t crc;
|
||
} config_data_t;
|
||
|
||
// 토零혐4-鞫刻팁꽝鑒
|
||
typedef struct
|
||
{
|
||
config_header_t header; // 庫斤口
|
||
unsigned : 8;
|
||
unsigned : 8;
|
||
uint16_t lightDelay; // 교밟儺珂
|
||
uint16_t dispDelay; // 鞫刻팁儺珂
|
||
uint8_t unit; // 鞫刻데貫(무齡、亶齡)
|
||
uint8_t L_Unit; // 鞫刻데貫(UNIT_KPA, UNIT_KG, UNIT_L, UNIT_PCT, UNIT_MMH2O)
|
||
char pwd1[6]; // 뇨받꽝鑒錦맣쵱쯤
|
||
char pwd2[6]; // 눈먁포깃땍쵱쯤
|
||
char APN[20]; // 頓檀<E9A093>APN
|
||
uint32_t bdCommander; // 굇떱寧뿐샙엥뵀
|
||
struct
|
||
{
|
||
uint8_t op_HARDWARE_VER_MAJOR; // 袒숭토零(꼇谿와빵뵨朞淃돨莉북)
|
||
uint8_t op_DISP_MMWC_ONLY;
|
||
uint8_t op_DOL_VER;
|
||
uint8_t op_BOX_VER;
|
||
unsigned op_CELL_LOCATION : 1; // 샘籃땍貫
|
||
unsigned op_NO_LOCATION : 1; // 꼇땍貫
|
||
unsigned : 6;
|
||
uint8_t op_LEVEL_SENSOR_ONLY;
|
||
uint8_t op_USE_PT100_SENSOR;
|
||
uint8_t op_PT100_MULTI;
|
||
uint8_t op_PT100_3LINE;
|
||
uint8_t op_DIFF_RESIST;
|
||
uint8_t op_SEND_GPS_DATA;
|
||
|
||
unsigned op_USE_CAPACITY_SENSOR : 1;
|
||
unsigned op_LOW_ALARM_OUTPUT : 1; // 됴捻貫<E68DBB>밟괩쒸묘콘
|
||
unsigned op_PRESS_ALARM_OUTPUT : 1; // 箕제<E7AE95>밟괩쒸
|
||
unsigned op_LOW_PRESS_ALARM_OUTPUT : 1; // 됴箕제<E7AE95>밟괩쒸
|
||
unsigned op_ANTI_SINGLE_CTRL : 1; // 렝법념데庫든늚랫
|
||
unsigned op_ANTI_AUTO_FILL : 1; // 렝법념됴捻貫菱땡념陋
|
||
unsigned op_USE_PCT_CAP : 1; // 객藤낀든휭渴놔겟롸궐
|
||
unsigned op_LOCAL_DISP_1S : 1; // 굶뒈鞫刻1취꽃섞
|
||
|
||
unsigned : 1; // 괏즛,꼇狼欖痰
|
||
unsigned op_USE_R0SEMOUNT : 1; // 쭈薑촁景눈먁포
|
||
unsigned op_USE_SOLAR : 1; // 唐格捺콘
|
||
unsigned op_USE_O2_LEAK : 1; // 南눈먁포
|
||
unsigned op_LEAK_ALARM_OUTPUT : 1; // 橘쨋괩쒸渴놔
|
||
unsigned op_USE_DOL_TTL : 1; // DOL鑒俚渴놔눈먁포
|
||
unsigned op_USE_HEIGHT_LEVEL : 1;// 殮쌈꿎捻貫멕똑
|
||
unsigned op_USE_PCT_LEVEL: 1; // 殮쌈꿎捻貫겟롸궐
|
||
|
||
uint8_t op_SERVER_PROTOCOL; // 륩蛟포葵累:0-TCP; 1-MQTT; 2-HTTPS; 3-HTTP; 4-TRAIN; 5-AOYANG
|
||
uint8_t op_SERVER_INDEX; // 륩蛟포뒈囹乞多
|
||
|
||
unsigned op_UNIDIR_COMM : 1; // 꼇連넣崗蕨繫斤
|
||
unsigned op_LOCAL_DISP : 1; // 怜唐굶뒈鞫刻
|
||
unsigned op_ANTI_OVERFILL : 1; // 렝법념묘콘
|
||
unsigned op_ALARM_OUTPUT : 1; // 멕捻貫<E68DBB>밟괩쒸묘콘
|
||
unsigned op_DIFF_420MA : 1; // 뀌箕눈먁포槨4~20mA
|
||
unsigned op_PRESS_420MA : 1; // 箕제눈먁포槨4~20mA
|
||
unsigned op_2ND_420MA_OUT_LEVEL : 1; // 뒤2쨌4~20mA渴놔捻貫
|
||
unsigned : 1;
|
||
|
||
uint8_t op_PRODUCT_CLASS; // 0-뀌箕셕경굶,1-향箕제경굶
|
||
unsigned op_TRAIN : 1; // 屆쨌받芎경굶
|
||
unsigned op_TIGER : 1; // 일빪횝폭경굶
|
||
unsigned : 2;
|
||
unsigned op_LNG_LORA: 1; // LNG-LORA경굶
|
||
unsigned : 3;
|
||
};
|
||
union
|
||
{
|
||
uint8_t reserved[56];
|
||
struct // size = 52, 屆쨌받芎劤藤토零
|
||
{
|
||
char reserved[12]; // 섞陋芎긍뵀(11貫ASCII쯤)(盧돕뇨받토零혼죄)
|
||
int16_t intervalTransAlarm; // 渡쒸<E6B8A1>눈鷺퍅(롸爐)
|
||
int16_t regTimeout; // 貢쭹鬧꿍珂쇌낚珂(취)
|
||
int16_t gpsTimeout; // 땍貫珂쇌낚珂(취)
|
||
int16_t sendTimeout; // 鑒앴랙箇珂쇌낚珂(취)
|
||
int16_t motionThreshold; // 속醵똑땡쓰埴令mg
|
||
int16_t leakAlarm; // 옵횝폭竟큠똑渡쒸랫令(渡즛)
|
||
int16_t temprAlarm; // 侊똑渡쒸랫令(→)
|
||
int32_t diffCaliRatio; // 뀌箕叫硫溝
|
||
int32_t pressCaliRatio; // 폭宮箕제繫돛叫硫溝鑒
|
||
int32_t temprCaliRatio; // 捻宮侊똑繫돛叫硫溝鑒
|
||
int32_t leakCaliRatio; // 橘짤큠똑繫돛叫硫溝鑒(渡즛)
|
||
int32_t vaccumCaliRatio; // 廬왕똑繫돛叫硫溝鑒(渡즛)
|
||
int16_t pressCompensate; // 폭宮箕제껸낄
|
||
int16_t diffCompensate; // 뀌箕껸낄
|
||
int8_t gpsEnabled; // GPS 역밑
|
||
int8_t loraDisabled; // lora 역밑
|
||
} train;
|
||
};
|
||
uint16_t crc;
|
||
} config_display_t;
|
||
|
||
// 꽃섞겼溝固斤口
|
||
typedef struct
|
||
{
|
||
uint8_t boardFlag; // 寮겼깃街
|
||
unsigned : 8;
|
||
version_t hardVer;
|
||
version_t softVer;
|
||
date_t softDate;
|
||
unsigned : 8;
|
||
} sysinfo_sample_t;
|
||
|
||
// 든都겼溝固斤口
|
||
typedef struct
|
||
{
|
||
uint8_t boardFlag; // 寮겼깃街
|
||
unsigned : 8;
|
||
version_t hardVer;
|
||
version_t softVer;
|
||
date_t softDate;
|
||
char parity; // 펜탉叫駱렘駕
|
||
uint32_t baudrate; // DTU꺼景쪽
|
||
version_t protocolVer; // 陶눈葵累경굶뵀
|
||
char simNumber[24]; // sim엥뵀
|
||
uint32_t gprsSendCount; // GPRS랙箇늴鑒
|
||
uint32_t gprsSuccCount; // GPRS냥묘늴鑒
|
||
char gprsFailCode[6]; // GPRS呵겨덜쯤
|
||
uint32_t bdNumber; // 굇떱엥뵀
|
||
} sysinfo_power_t;
|
||
|
||
// 鞫刻겼溝固斤口
|
||
typedef struct
|
||
{
|
||
uint8_t boardFlag; // 寮겼깃街
|
||
unsigned : 8;
|
||
version_t hardVer;
|
||
version_t softVer;
|
||
date_t softDate;
|
||
unsigned : 8;
|
||
} sysinfo_display_t;
|
||
|
||
// 융記겼溝固斤口
|
||
typedef struct
|
||
{
|
||
uint8_t boardFlag; // 寮겼깃街
|
||
unsigned : 8;
|
||
version_t hardVer;
|
||
version_t softVer;
|
||
date_t softDate;
|
||
char parity; // 펜탉叫駱렘駕
|
||
uint32_t baudrate; // 융記친욥꺼景쪽
|
||
version_t protocolVer; // 융記葵累경굶
|
||
char moduleName[20]; // 융記친욥츰냔
|
||
} sysinfo_bluetooth_t;
|
||
|
||
// DTU꽃섞鑒앴
|
||
typedef struct // size = 56
|
||
{
|
||
date_time_t sysTime; // 溝固珂쇌, size = 6
|
||
int32_t longitude; // 쒔똑
|
||
int32_t latitude; // 郭똑
|
||
uint16_t speed; // 醵똑
|
||
uint8_t rssi; // GPRS斤뵀퓻똑
|
||
uint8_t networked; // 角뤠흙貢
|
||
uint8_t connected; // 角뤠젯<EBA4A0>륩蛟포
|
||
uint8_t netType; // 貢쭹잚謹
|
||
uint8_t posState; // GPS땍貫榴檄
|
||
uint8_t sateCount; // GPS括槿鑒좆
|
||
uint8_t batPct; // 든넥든좆겟롸궐
|
||
uint8_t batLow; // 됴든좆깃羚
|
||
int16_t batVoltage; // 든넥든箕
|
||
uint16_t batMaxCapa; // 든넥悧휭좆
|
||
uint16_t batCapa; // 든넥휭좆
|
||
int16_t batCurrent; // 든넥념/렴든직
|
||
int16_t batTempr; // 든넥侊똑
|
||
int16_t sunLevel; // 밟亮퓻똑
|
||
struct //size = 20, 屆쨌받芎劤藤꽃섞斤口
|
||
{
|
||
int16_t countryId; // 샘籃벌소긍뵀
|
||
int16_t ispId; // 頓檀<E9A093>긍뵀
|
||
int16_t areaId; // 혐堵긍뵀
|
||
int32_t cellId; // 샘籃긍뵀
|
||
int8_t genNo; // 貢쭹경굶2G/3G/4G
|
||
int8_t bandNo; // 繫斤貢쭹틉뙈斤口
|
||
// 2G 槨-1
|
||
// 3G 槨(wcdma(1-8(꺼뙈) tdscdma(9(a 꺼뙈) 10(f꺼뙈) 11(e 꺼뙈)))
|
||
// 4G (1-43(꺼뙈))
|
||
int16_t regTime; // 貢쭹鬧꿍珂쇌(취)
|
||
int16_t locateTime; // 땍貫鎧槿珂쇌(취)
|
||
int16_t elevation; // 베겄(쵠)
|
||
int8_t dBm; // 없뚤斤뵀퓻똑
|
||
int8_t locateType; // 땍貫렘駕(0: 轟땍貫,1:括槿땍貫,2:샘籃땍貫)
|
||
} train;
|
||
} data_dtu_t;
|
||
|
||
// 꽃섞겼꽃섞鑒앴
|
||
typedef struct // size = 126
|
||
{
|
||
uint32_t volumeTotal; // 뇨받휭생
|
||
sensor_status_t staWeight; // 냔路눈먁포榴檄, size = 1
|
||
sensor_status_t staDPress; // 뀌箕/든휭눈먁포榴檄
|
||
sensor_status_t staPress; // 箕제눈먁포榴檄
|
||
sensor_status_t staExtPress[3]; // 윈嵐箕제눈먁포榴檄
|
||
sensor_status_t staExtTempr[3]; // 윈嵐侊똑눈먁포榴檄
|
||
unsigned : 8;
|
||
float diff; // 뀌箕/든휭
|
||
float height; // 捻貫멕똑
|
||
uint32_t volume; // 휭생
|
||
uint32_t weight; // 路좆
|
||
uint16_t volumePct; // 휭생겟롸궐
|
||
uint16_t pressure; // 箕제
|
||
uint16_t extPressure[3]; // 윈嵐箕제
|
||
int16_t extTempr[3]; // 윈嵐侊똑
|
||
vacuum_data_t vacuum[2]; // 廬왕눈먁포鑒앴(A、B),size = 12 x 2
|
||
leak_data_t leak; // 橘쨋괩쒸포鑒앴, size = 4
|
||
flow_data_t flow; // 직좆셕鑒앴,size = 22
|
||
uint32_t adWeight; // 냔路눈먁포AD瘻뻣令
|
||
uint16_t adDPress; // 뀌箕눈먁포AD瘻뻣令
|
||
uint16_t adPress; // 箕제눈먁포AD瘻뻣令
|
||
uint16_t adExtPress[3]; // 윈嵐箕제눈먁포AD瘻뻣令
|
||
uint16_t adExtTempr[3]; // 윈嵐侊똑눈먁포AD瘻뻣令
|
||
uint8_t charging; // 념陋깃羚
|
||
uint8_t warnning; // 괩쒸깃羚
|
||
struct //size = 8, 屆쨌받芎劤藤꽃섞斤口
|
||
{
|
||
int8_t cpuTempr; // cpu 侊똑(→)
|
||
int8_t tranMode; // 묏鱗榴檄0x00 攣끽랙箇0x01 渡쒸랙箇
|
||
int16_t x_accelerate; // X 菉렘蕨令
|
||
int16_t y_accelerate; // Y 菉렘蕨令
|
||
int16_t z_accelerate; // Z 菉렘蕨令
|
||
} train;
|
||
|
||
} data_sample_t;
|
||
|
||
// adc令
|
||
typedef struct
|
||
{
|
||
uint16_t adcDiff; // 뀌箕ADC令
|
||
uint16_t adcPress; // 箕제ADC令
|
||
uint16_t adcEPress[3]; // 윈嵐箕제ADC令
|
||
uint16_t adcETempr[3]; // 윈嵐侊똑ADC令
|
||
uint32_t adcWeight; // 냔路ADC令
|
||
} adc_sample_t;
|
||
|
||
// 땍屢뻠녑혐,痰黨CAN繫祇샀Flash뗍畇
|
||
typedef union
|
||
{
|
||
// 俚쌘뻠녑,痰黨繫斤법넋櫓뗍畇
|
||
uint8_t buff[DATA_BUFF_SIZE];
|
||
// 俚뻠녑
|
||
uint16_t buff16[DATA_BUFF_SIZE / sizeof(uint16_t)];
|
||
// 崗俚뻠녑,痰黨뗍畇Flash
|
||
uint32_t buff32[DATA_BUFF_SIZE / sizeof(uint32_t)];
|
||
// 痰黨쇱꿴토零角뤠唐槻
|
||
config_header_t header; // 庫斤口
|
||
|
||
// 鑒앴써뭐,痰黨俚뙈썩驕
|
||
config_bottle_t configBottle;
|
||
config_sensor_t configSensor;
|
||
config_data_t configData;
|
||
config_display_t configDisplay;
|
||
sysinfo_sample_t sampleInfo;
|
||
sysinfo_power_t powerInfo;
|
||
sysinfo_display_t displayInfo;
|
||
sysinfo_bluetooth_t bluetoothInfo;
|
||
data_dtu_t dtuData;
|
||
data_sample_t sampleDdata;
|
||
adc_sample_t adcData;
|
||
} rd_buff_t;
|
||
|
||
// 痰黨닸뇨鑒앴
|
||
typedef struct
|
||
{
|
||
config_bottle_t configBottle;
|
||
config_sensor_t configSensor;
|
||
config_data_t configData;
|
||
config_display_t configDisplay;
|
||
sysinfo_sample_t sampleInfo;
|
||
sysinfo_power_t powerInfo;
|
||
sysinfo_display_t displayInfo;
|
||
sysinfo_bluetooth_t bluetoothInfo;
|
||
data_dtu_t dtuData;
|
||
data_sample_t sampleData;
|
||
adc_sample_t adcData;
|
||
} data_buff_t;
|
||
|
||
#pragma pack(pop)
|
||
|
||
// 몹몸鑒앴욥돨낀똑
|
||
#define CONFIG_DATA_LEN(DC) Config_DataLen[(DC) - 1]
|
||
#define CONFIG_DATA_PTR(DC) Config_DataPtr[(DC) - 1]
|
||
extern const uint8_t Config_DataLen[];
|
||
extern const void* Config_DataPtr[];
|
||
|
||
// 몹몸토零혐돨코닸
|
||
extern data_buff_t dcBuff;
|
||
|
||
uint32_t Config_CheckValid(rd_buff_t *dataBuff, uint8_t DC);
|
||
void Config_ForceValid(rd_buff_t *dataBuff, uint8_t DC);
|
||
|
||
// 쇱꿴꽝鑒錦맣깃羚
|
||
uint32_t Config_CheckUpdate(data_buff_t *dataBuff);
|
||
|
||
// <20>零뇨받꽝鑒돨칵훰令
|
||
void Config_setBottleDefParam(data_buff_t *dataBuff);
|
||
// <20>零눈먁포꽝鑒돨칵훰令
|
||
void Config_setSensorDefParam(data_buff_t *dataBuff);
|
||
// <20>零鑒앴꽝鑒돨칵훰令
|
||
void Config_setDataDefParam(data_buff_t *dataBuff);
|
||
// <20>零鞫刻꽝鑒돨칵훰令
|
||
void Config_setDisplayDefParam(data_buff_t *dataBuff);
|
||
|
||
// 輕념꽃섞겼溝固斤口
|
||
void Config_fillSampleInfo(data_buff_t *dataBuff);
|
||
// 輕념든都겼溝固斤口
|
||
void Config_fillPowerInfo(data_buff_t *dataBuff);
|
||
// 輕념鞫刻겼溝固斤口
|
||
void Config_fillDisplayInfo(data_buff_t *dataBuff);
|
||
// 輕념융記겼溝固斤口
|
||
void Config_fillBluetoothInfo(data_buff_t *dataBuff);
|
||
|
||
// 뜩淃駕槨x16+x15+x2+1,LSB糠埼
|
||
uint16_t do_crc_16(unsigned short crc_reg, uint8_t *message, int16_t len);
|
||
|
||
#endif
|