📄 record.h
字号:
// Record.h: interface for the CRecord class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_RECORD_H__92B0C4E6_1424_42F3_BF80_5AC87DAA03DA__INCLUDED_)
#define AFX_RECORD_H__92B0C4E6_1424_42F3_BF80_5AC87DAA03DA__INCLUDED_
#include "Fram.h" // Added by ClassView
#include "Record.h"
#include <tchar.h>
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define SENSER_PAUSE 8//传感器每次转一圈的脉冲数
#define DEFAULT_K_MODULUS 640//默认的K值
//*********************************************************************
//文件头
#define ADD_CORTOI_DESCRIB 0x00
#define SIZEOF_CORTOI_DESCRIB 48//科泰英文描述文件
#define ADD_ELABLE 0x0030
#define ADD_K_MODULUS 0xec
//速度
#define MAX_VI_RECORD_MEM 32000
#define VI_FOR_HOUR_MEM 64
//Address in FRAM definition;
#define ADD_VEC_INF 0x0060
#define ADD_DRIVER 0x00a0
#define ADD_BLOCK_INDEX 0x0100
#define ADD_MIN_INDEX 0x0102
//平均速度存储区
#define ADD_VI_START 0x110
#define VI_SIZE 64
#define MAX_HOUR_NUM 480
//速度最大值
#define MAX_VI 250
//里程日统计
#define MAX_NUMBER_OF_MILEAGE_RECORD 30
#define NUM_OF_BYTE_IN_ITEM 9
// #define ADD_MILEAGE_INDEX 0x8000
// #define ADD_MILEAGE_START 0x8001
#define ADD_MILEAGE_INDEX 0x79a0
#define ADD_MILEAGE_START 0x79a1
//进出站记录
#define NUM_OF_STATION_REC 2000
#define SIZEOF_STATION_ITEM 10
#define IN_STTION 0xa
#define OUT_STTION 0xb
#define DIR_UP 0xaa
#define DIR_DOWN 0xbb
#define ADD_STATION_INDEX 0x7b00
#define ADD_STATION_START 0x7b02
//疑点数据
#define SIZEOF_A_DOUT_REC 313
#define SIZEOF_ITEM_HEAD 13
#define MAX_NUM_OF_DOUT_REC 20
#define ADD_DOUBT_INDEX 0xc9ff
#define ADD_DOUBT_START 0xca00
//超速记录
#define MAX_NUM_OF_OVERSPEED_REC 500
#define SIZEOF_A_OVERSPEED_REC 14
#define ADD_OVERSPEED_START 0Xe2a0
#define ADD_OVERSPEED_INDEX (ADD_OVERSPEED_START - 2)
///#define
typedef struct _SATION
{
unsigned char year;//1
unsigned char month;//2
unsigned char day;//3
unsigned char hour;//4
unsigned char minutes;//5
unsigned char second;//6
unsigned char direct;//7
unsigned char inOrOUt;//8
unsigned char number;//9
unsigned char reserved;//10
} SATION;
typedef struct _ELABLE
{
unsigned char hardVer;
unsigned char sysVer;
unsigned char UID[4];
unsigned char year;
unsigned char month;
unsigned char day;
unsigned char hour;
unsigned char min;
unsigned char QAid;
unsigned char isRepair;
unsigned char customerID[2];
}ELABLE;
typedef struct _VEC_INF
{
unsigned char VIN[17];
unsigned char type;
unsigned char ID[11];
unsigned char ID_self[5];
}VEC_INF;
typedef struct _OVER_SPEED
{
unsigned char byear;
unsigned char bmonth;
unsigned char bday;
unsigned char bhour;
unsigned char bmin;
unsigned char bsecond;
unsigned char oyear;
unsigned char omonth;
unsigned char oday;
unsigned char ohour;
unsigned char omin;
unsigned char osecond;
unsigned char limitspeed;
unsigned char maxspeed;
}OVER_SPEED;
class CRecord
{
public:
BOOL InsertDoubt(unsigned char vi,unsigned char byteValue1,unsigned char byteValue2);
BOOL InsertStation(const SATION station);
BOOL SetKModulus(unsigned int KModulus);
BOOL GetKModulus(unsigned int& KModulus);
unsigned int defaultKModulus;
BOOL CRecord::AddMileage(unsigned long numberOfPause);
unsigned char counter;
unsigned long minuVi;
unsigned long SeekPointer(unsigned int& blockIndex,unsigned char minuIndex);
LPSYSTEMTIME lastTime;
BOOL InsertVi(unsigned char vi);
BOOL SetVIIndex();
unsigned char VIMinIndex;
unsigned char VIBlockIndex[2];
BOOL Overspeed(const OVER_SPEED over_speed);
BOOL SetDriver();
BOOL SetVecInf(const VEC_INF* inf);
BOOL WriteElable(const ELABLE* elable);
BOOL HighLevelFormat();
CRecord();
virtual ~CRecord();
CFram* pFramOnBorad;
};
#endif // !defined(AFX_RECORD_H__92B0C4E6_1424_42F3_BF80_5AC87DAA03DA__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -