#ifndef _MAIN_H_
#define _MAIN_H_
#include "define_all.h"
#define OS_YEAR ((((__DATE__[7] - '0') * 10 + (__DATE__[8] - '0')) * 10 + (__DATE__[9] - '0')) * 10 + (__DATE__[10] - '0'))
#define OS_MONTH (__DATE__[2] == 'n' ? (__DATE__[1] == 'a' ? 1 : 6) \
: __DATE__[2] == 'b' ? 2 \
: __DATE__[2] == 'r' ? (__DATE__[0] == 'M' ? 3 : 4) \
: __DATE__[2] == 'y' ? 5 \
: __DATE__[2] == 'l' ? 7 \
: __DATE__[2] == 'g' ? 8 \
: __DATE__[2] == 'p' ? 9 \
: __DATE__[2] == 't' ? 10 \
: __DATE__[2] == 'v' ? 11 \
: 12)
#define OS_DAY ((__DATE__[4] == ' ' ? 0 : __DATE__[4] - '0') * 10 + (__DATE__[5] - '0'))
#define OS_HOUR ((__TIME__[0] - '0') * 10 + (__TIME__[1] - '0'))
#define OS_MINUTE ((__TIME__[3] - '0') * 10 + (__TIME__[4] - '0'))
#define OS_SENCOND ((__TIME__[6] - '0') * 10 + (__TIME__[7] - '0'))
// <<< Use Configuration Wizard in Context Menu >>>
// °æ±¾ºÅÉèÖÃ
// °æ±¾ºÅÔ¤Áô
// <0x00 - 0x99>
#define FW_VER_RESERVE 0x00
// Ö÷°æ±¾ºÅ
// µ±¹¦ÄÜÄ£¿éÓнϴóµÄ±ä¶¯£¬±ÈÈçÔö¼Ó¶à¸öÄ£¿é»òÕßÕûÌå¼Ü¹¹·¢Éú±ä»¯¡£´Ë°æ±¾ºÅÓÉÏîÄ¿¾ö¶¨ÊÇ·ñÐ޸ġ£
// <0x00 - 0x99>
#define FW_VER_MAIN 0x01
// ×Ó°æ±¾ºÅ
// µ±¹¦ÄÜÓÐÒ»¶¨µÄÔö¼Ó»ò±ä»¯£¬±ÈÈçÔö¼ÓÁ˶ÔȨÏÞ¿ØÖÆ¡¢Ôö¼Ó×Ô¶¨ÒåÊÓͼµÈ¹¦ÄÜ¡£´Ë°æ±¾ºÅÓÉÏîÄ¿¾ö¶¨ÊÇ·ñÐ޸ġ£
// <0x00 - 0x99>
#define FW_VER_MINOR 0x02
// ÐÞ¶©°æ±¾ºÅ
// Ò»°ãÊÇBugÐÞ¸´»òÊÇһЩСµÄ±ä¶¯£¬Òª¾³£·¢²¼ÐÞ¶©°æ£¬Ê±¼ä¼ä¸ô²»ÏÞ£¬ÐÞ¸´Ò»¸öÑÏÖØµÄbug¼´¿É·¢²¼Ò»¸öÐÞ¶©°æ¡£´Ë°æ±¾ºÅÓÉÏîÄ¿¾Àí¾ö¶¨ÊÇ·ñÐ޸ġ£
// <0x00 - 0x99>
#define FW_VER_REVISE 0x03
//
// ¶¨ÒåÓ²¼þ°æ±¾ºÅ
#define HARDWARE_VERSION "02154.0203.3"
// ¶¨Òå¹Ì¼þ°æ±¾ºÅ
// µÚÒ»¸öСÊýµãÊý£¬¹ØÁªÊÊÅäÆ½Ì¨£¬Ë¼Öþ×ÔÓÿÉÓà 0-5£¬ÊÊÅäµÚÈý·½Ê±»áÓжÔÓ¦µÄÖµ
// µÚ¶þ¸öСÊýµãÊý£¬´ú±íÖ÷¿ØÐ¾Æ¬£¬0-F103VE,1-F407VETx,2-F446RETx
// µÚÈý¸öСÊýµãÊý£¬µ±¹¦ÄÜÄ£¿éÓнϴóµÄ±ä¶¯£¬±ÈÈçÔö¼Ó¶à¸öÄ£¿é»òÕßÕûÌå¼Ü¹¹·¢Éú±ä»¯
// µ±¹¦ÄÜÓÐÒ»¶¨µÄÔö¼Ó»ò±ä»¯£¬±ÈÈçÔö¼ÓÁ˶ÔȨÏÞ¿ØÖÆ¡¢Ôö¼Ó×Ô¶¨ÒåÊÓͼµÈ¹¦ÄÜ¡£´Ë°æ±¾ºÅÓÉÏîÄ¿¾ö¶¨ÊÇ·ñÐÞ¸Ä
// µÚËĸöСÊýµãÊý£¬Ò»°ãÊÇBugÐÞ¸´»òÊÇһЩСµÄ±ä¶¯£¬Òª¾³£·¢²¼ÐÞ¶©°æ£¬Ê±¼ä¼ä¸ô²»ÏÞ£¬ÐÞ¸´Ò»¸öÑÏÖØµÄbug¼´¿É·¢²¼Ò»¸öÐÞ¶©°æ¡£´Ë°æ±¾ºÅÓÉÏîÄ¿¾Àí¾ö¶¨ÊÇ·ñÐÞ¸Ä
#define FIRMWARE_VERSION "1.3.0.0"
// ÊÇ·ñÆôÓõ͹¦ºÄ£¨STOP_MODE£©
// ֹͣģʽ
//#define STOP_MODE
//
// ÊÇ·ñÆôÓÃÓ²¼þ¿´ÃŹ·
// ¿´ÃŹ·
//#define WDG_USE
//
// ÊÇ·ñÆôÓôòÓ¡º¯Êý£¨Printf£©
// µ÷ÊÔ״̬Ï¿ÉÓôòÓ¡º¯Êý£¬Õýʽ״̬ϲ»¿ÉÓÃ
#define RS232_PRINTF
//
// ÊÇ·ñÎÞÐèС°å×Ô¶¯»ñÈ¡Êý¾Ý
// ÎÞÐèС°å×Ô¶¯»ñÈ¡Êý¾Ý£¬ÓÃÓÚµ¥°åµ÷ÊÔ£¬Õýʽ״̬ϲ»¿ÉÓÃ
//#define NO_SLAVE_GET_FLOW_DATA_TEMP
//
// ÊÇ·ñÎÞÐèС°å¿ÉÇл»Ä£Ê½
// ÎÞÐèС°å¿ÉÇл»Ä£Ê½£¬ÓÃÓÚµ¥°åµ÷ÊÔ£¬Õýʽ״̬ϲ»¿ÉÓÃ
//#define NO_SLAVE_SET_MODE_TEST
//
// ÊÇ·ñÆôÓÃÐÂÒº¾§
// ¹´Ñ¡Ôò±íʾʹÓÃÐÂÒº¾§£¬·´ÔòÀÏÒº¾§
#define LCD_NEW
//
// ĬÈϵÄϵͳģʽ
// <1=>ÆÕͨģʽ <2=>²ÎÊýÏÔʾģʽ <4=>¼ì¶¨Ä£Ê½ <8=>¹¤³Ìģʽ
#define SYS_MODE_DEFAULT 8
// ĬÈϵÄÏÔʾģʽ
// <0U=>°´¼üÏÔʾģʽ <1=>³£ÏÔģʽ <2=>ÓÐÁ÷Á¿ÏÔʾģʽ
#define SYS_LCD_DISPLAY_MODE_DEFAULT 0
// I2Cģʽ
// <0U=>Ó²¼þI2C <1=>Èí¼þI2C
#define SOFT_OR_HARD 0
// Ö÷ϵͳ»ñÈ¡Á÷Á¿Êý¾ÝµÄÖÜÆÚʱ¼ä
// ·¶Î§1 ~ 20Ãë
// <1 - 20>
#define GET_FLOW_DATA_PERIOD_TIME 10
// ϵͳ»½ÐÑ£¨²»ÐÝÃߣ©³ÖÐøÊ±¼ä
// ·¶Î§20 ~ 180Ãë
// <5 - 180>
#define SYS_WAKE_UP_TIME 30
// ÏÔʾ²ÎÊýģʽ³ÖÐøÊ±¼ä
// ·¶Î§100 ~ 300Ãë
// <100 - 300>
#define DISPLAY_PARA_TIME 300
// Ô¶´«¼¤»î³¬Ê±Ê±¼ä
// Ô¶´«Ä£¿éÎÞÏìÓ¦µ½×Ô¶¯¹Ø±ÕµÄ³ÖÐøÊ±¼ä¡¢·¶Î§90 ~ 180Ãë
// <90 - 180>
#define GPRS_TIMEOUT 120
// Ô¶´«ÖØÁ¬¼ä¸ôʱ¼ä
// Ô¶´«Ä£¿é¹Ø±Õµ½ÔÙ´ÎÁ¬½ÓµÄ¼ä¸ôʱ¼ä¡¢·¶Î§3 ~ 10·ÖÖÓ
// <180 - 600>
#define GPRS_RECONNECTION_INTERVAL_TIME 10
// ÉÏλ»ú¼¤»îʱ¼ä
// ÉÏλ»úµÇ¼ºóµÄ¿ÉÓÃʱ¼ä£»Óн»»¥ÔòÖØÖÃʱ¼ä¡¢·¶Î§300 ~ 900Ãë
// <300 - 900>
#define UC_ACTIVE_TIME 600
// ÉèÖòÎÊýģʽ³¬Ê±Ê±¼ä
// ÉèÖòÎÊýģʽÏÂδ½»»¥ N ·ÖÖÓ×Ô¶¯ÍË»ØÕý³£Ä£Ê½¡¢·¶Î§10 ~ 30·Ö
// <10 - 30>
#define SET_PARA_MODE_TIMEOUT 10
// ¼ì¶¨Ä£Ê½Ï³¬Ê±Ê±¼ä
// ¼ì¶¨Ä£Ê½ÏÂÎÞÁ÷Á¿ N ·ÖÖÓ×Ô¶¯ÍË»ØÕý³£Ä£Ê½¡¢·¶Î§20 ~ 120·Ö
// <20 - 120>
#define CAL_MODE_TIMEOUT 20
// ¼ì¶¨Ä£Ê½ÏÂÇ¿ÖÆÍ˳öʱ¼ä
// ¼ì¶¨Ä£Ê½Ï³ÖÐøN·ÖÖÓÇ¿ÖÆÍË»ØÕý³£Ä£Ê½¡¢·¶Î§480 ~ 600·Ö
// <480 - 600>
#define CAL_MODE_FORCE_TIME 480
// Ô¶´«ÐÒéÑ¡Ôñ
// <0=>˼Öþ·§ <1=>˼ÖþÈ¼Æø±í
#define GPRS_PROTOCOL_SELECT 1
// Ô¶´«Êý¾ÝģʽѡÔñ
// <0=>ʵʱÊý¾Ý <1=>ÀúÊ·Êý¾Ý
#define GPRS_HISTORY_OR_REAL_DATA 1
// Ô¶´«ÐÒéÃÜÔ¿°æ±¾
// <0=>¹Ø±Õ <0x80=>Æô¶¯
#define KEY_VERSION 0x80
// Ä£¿éÑ¡Ôñ
// <0=>4G <1=>NB
#define NB_OR_4G_FLAG 0
// ÉèÖÃAPN
// <0=>¹Ø±Õ <1=>Æô¶¯
#define APN_SET_FLAG 0
// IP/ÓòÃû
// <0=>IP <1=>ÓòÃû
#define IP_OR_YUMING_FLAG 0
// ÍøÂçʱ¼äºÍÉ豸ʱ¼äÏà²î²»³¬¹ý N Ãë
// ÍøÂçʱ¼äºÍÉ豸ʱ¼äÏà²î³¬¹ý N Ãë×Ô¶¯Ð£×¼ÎªÍøÂçʱ¼ä¡¢·¶Î§180 ~ 480Ãë
// <180 - 480>
#define AUTO_CALI_TIME_SEC_MAX 300
// ±ê׼ѹÁ¦
#define STANDARD_PRESSURE 101.325f
// ±ê׼ζÈ
#define STANDARD_TEMPERATURE 293.15f
#define CAL_TEST
//--------------------------------------------------------------------------
#define FIRMWARE_VER_1 0x0000
#define FIRMWARE_VER_2 0x0102
#define FIRMWARE_VER_3 0x0407
//#define STOP_MODE //ֹͣģʽ£¬Õýʽ³ÌÐòÐèÒªÆôÓÃ
//#define BOARD_INITIALIZATION //³õʼ»¯´æ´¢
#endif