Browse Source

add files

master
Ian Ilkyun Oh 2 months ago
parent
commit
cb561f1599
  1. 247
      TestLibDlg/IncSourceTestDlg/common_def.h

247
TestLibDlg/IncSourceTestDlg/common_def.h

@ -0,0 +1,247 @@
#ifndef _COMMON_DEF_FOR_A2L_
#define _COMMON_DEF_FOR_A2L_
#include <list>
#include <stdio.h>
#include <stdint.h>
enum A2L_BYTE_ORDER_MSB_TYPE {
BYTE_ORDER_MSB_LAST = 0,
BYTE_ORDER_MSB_FIRST = 1
};
enum A2L_ADDRESS_GRANULARITY_TYPE {
ADDRESS_GRANULARITY_BYTE = 1,
ADDRESS_GRANULARITY_WORD = 2,
ADDRESS_GRANULARITY_DWORD = 4
};
enum A2L_OPTIONAL_COMMAND_TYPE {
GET_COMM_MODE_INFO = 0xFB,
GET_ID = 0xFA,
SET_REQUEST = 0xF9,
GET_SEED = 0xF8,
UNLOCK = 0xF7,
SET_MTA = 0xF6,
UPLOAD = 0xF5,
SHORT_UPLOAD = 0xF4,
BUILD_CHECKSUM = 0xF3,
TRANSPORT_LAYER_CMD = 0xF2,
USER_CMD = 0xF1,
DOWNLOAD = 0xF0,
DOWNLOAD_NEXT = 0xEF,
DOWNLOAD_MAX = 0xEE,
SHORT_DOWNLOAD = 0xED,
MODIFY_BITS = 0xEC,
SET_CAL_PAGE = 0xEB,
GET_CAL_PAGE = 0xEA,
GET_PAG_PROCESSOR_INFO = 0xE9,
GET_SEGMENT_INFO = 0xE8,
GET_PAGE_INFO = 0xE7,
SET_SEGMENT_MODE = 0xE6,
GET_SEGMENT_MODE = 0xE5,
COPY_CAL_PAGE = 0xE4,
CLEAR_DAQ_LIST = 0xE3,
SET_DAQ_PTR = 0xE2,
WRITE_DAQ = 0xE1,
SET_DAQ_LIST_MODE = 0xE0,
GET_DAQ_LIST_MODE = 0xDF,
START_STOP_DAQ_LIST = 0xDE,
START_STOP_SYNCH = 0xDD,
GET_DAQ_CLOCK = 0xDC,
READ_DAQ = 0xDB,
GET_DAQ_PROCESSOR_INFO = 0xDA,
GET_DAQ_RESOLUTION_INFO = 0xD9,
GET_DAQ_LIST_INFO = 0xD8,
GET_DAQ_EVENT_INFO = 0xD7,
FREE_DAQ = 0xD6,
ALLOC_DAQ = 0xD5,
ALLOC_ODT = 0xD4,
ALLOC_ODT_ENTRY = 0xD3,
PROGRAM_START = 0xD2,
PROGRAM_CLEAR = 0xD1,
PROGRAM = 0xD0,
PROGRAM_RESET = 0xCF,
GET_PGM_PROCESSOR_INFO = 0xCE,
GET_SECTOR_INFO = 0xCD,
PROGRAM_PREPARE = 0xCC,
PROGRAM_FORMAT = 0xCB,
PROGRAM_NEXT = 0xCA,
PROGRAM_MAX = 0xC9,
PROGRAM_VERIFY = 0xC8,
WRITE_DAQ_MULTIPLE = 0xC7
};
enum A2L_DAQ_MODE_TYPE {
STATIC = 0,
DYNAMIC = 1
};
enum A2L_DAQ_OPTIMISATION_TYPE {
OPTIMISATION_TYPE_DEFAULT = 0,
OPTIMISATION_TYPE_ODT_TYPE_16 = 1,
OPTIMISATION_TYPE_ODT_TYPE_32 = 2,
OPTIMISATION_TYPE_ODT_TYPE_64 = 3,
OPTIMISATION_TYPE_ODT_TYPE_ALIGNMENT = 4,
OPTIMISATION_TYPE_MAX_ENTRY_SIZE = 5
};
enum A2L_DAQ_ADDRESS_EXTENSION {
ADDRESS_EXTENSION_FREE = 0,
ADDRESS_EXTENSION_ODT = 1,
ADDRESS_EXTENSION_DAQ = 3,
};
enum A2L_DAQ_IDENTIFICATION_FIELD_TYPE {
IDENTIFICATION_FIELD_TYPE_ABSOLUTE = 0,
IDENTIFICATION_FIELD_TYPE_RELATIVE_BYTE = 1,
IDENTIFICATION_FIELD_TYPE_RELATIVE_WORD = 2,
IDENTIFICATION_FIELD_TYPE_RELATIVE_WORD_ALIGNED = 3
};
enum A2L_DAQ_GRANULARITY_ODT_ENTRY_SIZE {
GRANULARITY_ODT_ENTRY_SIZE_DAQ_BYTE = 1,
GRANULARITY_ODT_ENTRY_SIZE_DAQ_WORD = 2,
GRANULARITY_ODT_ENTRY_SIZE_DAQ_DWORD = 4,
GRANULARITY_ODT_ENTRY_SIZE_DAQ_DLONG = 8
};
enum A2L_OverloadIndication {
NO_OVERLOAD_INDICATION = 0,
OVERLOAD_INDICATION_PID = 1,
OVERLOAD_INDICATION_EVENT = 2
};
enum A2L_GranularityOdtEntrySizeStim{
GRANULARITY_ODT_ENTRY_SIZE_STIM_BYTE = 1,
GRANULARITY_ODT_ENTRY_SIZE_STIM_WORD = 2,
GRANULARITY_ODT_ENTRY_SIZE_STIM_DWORD = 4,
GRANULARITY_ODT_ENTRY_SIZE_STIM_DLONG = 8
};
enum A2L_TimestampSupportedSize{
NO_TIME_STAMP = 0,
SIZE_BYTE = 1,
SIZE_WORD = 2,
SIZE_DWORD = 4
};
enum A2L_TimestampSupportedUnit {
UNIT_1NS = 0,
UNIT_10NS = 1,
UNIT_100NS = 2,
UNIT_1US = 3,
UNIT_10US = 4,
UNIT_100US = 5,
UNIT_1MS = 6,
UNIT_10MS = 7,
UNIT_100MS = 8,
UNIT_1S = 9
};
enum A2L_DaqListType {
DAQ = 1,
STIM = 2,
DAQ_STIM = 3
};
struct A2L_CommunicatonModeSupported {
bool m_bIsBlockMode;
unsigned char m_cMaster_MAX_BS; // MAX_BS
unsigned char m_cMaster_MIN_ST; // MIN_ST
unsigned char m_cInterleaved; // QUEUE_SIZE
};
struct A2L_Protocol_Layer {
uint32_t m_nXCPProtocolVersion; /* XCP protocol layer version, current 0x100 */
uint32_t m_nTimeout_T1; /* T1 [ms] */
uint32_t m_nTimeout_T2; /* T2 [ms] */
uint32_t m_nTimeout_T3; /* T3 [ms] */
uint32_t m_nTimeout_T4; /* T4 [ms] */
uint32_t m_nTimeout_T5; /* T5 [ms] */
uint32_t m_nTimeout_T6; /* T6 [ms] */
uint32_t m_nTimeout_T7; /* T7 [ms] */
unsigned char m_cMAX_CTO; /* MAX_CTO */
uint32_t m_nMAX_DTO; /* MAX_DTO */
A2L_BYTE_ORDER_MSB_TYPE m_nByteOrderMSBType;
A2L_ADDRESS_GRANULARITY_TYPE m_nAddressGranularityType;
std::list < unsigned char > m_nOptionalCommandList;
A2L_CommunicatonModeSupported m_stCommunicationModeSupported;
std::string m_strSeedAndKeyExternalFunction; // Name of the Seed&Key function
/*
"COMMUNICATION_MODE_SUPPORTED" taggedunion {
"BLOCK" taggedstruct {
"SLAVE";
"MASTER" struct {
uchar; // MAX_BS
uchar; // MIN_ST
};
};
"INTERLEAVED" uchar; // QUEUE_SIZE
};
"SEED_AND_KEY_EXTERNAL_FUNCTION" char[256]; // Name of the Seed&Key function
};
*/
};
struct A2L_StimBlock {
bool m_bIsUse;
A2L_GranularityOdtEntrySizeStim m_nGranularityOdtEntrySizeStim;
unsigned char m_cMaxOdtEntrySizeStim;
};
struct A2l_DaqTimeStampSupported {
bool m_bIsUse;
uint32_t m_nTimestampTicks;
A2L_TimestampSupportedSize m_nTimestampSupportedSize;
A2L_TimestampSupportedUnit m_nTimestampSupportedUnit;
};
struct A2L_ODTEntry {
unsigned char m_cOdtEntryNumber;
unsigned long m_lElementAddress;
unsigned char m_cExtenstionElementAddress;
unsigned char m_cElementSize;
unsigned char m_cBitOffset;
};
struct A2L_DaqListPredefined {
unsigned char m_cOdtNumber;
std::list < A2L_ODTEntry> m_OdtEntryList;
};
struct A2L_DaqList {
uint32_t m_nDaqListNumber;
A2L_DaqListType m_nDatListType;
unsigned char m_cMaxOdt;
unsigned char m_cMaxOdtEntries;
unsigned char m_cFirstPid;
uint32_t m_nEventFixed;
std::list < A2L_DaqListPredefined> m_PredefinedList;
};
struct A2L_Daq {
A2L_DAQ_MODE_TYPE m_nDaqMode;
uint32_t m_nMaxDaq; /* MAX_DAQ */
uint32_t m_nMaxEventChannel; /* MAX_EVENT_CHANNEL */
unsigned char m_cMinDaq; /* MIN_DAQ */
A2L_DAQ_OPTIMISATION_TYPE m_nOptimisationType;
A2L_DAQ_ADDRESS_EXTENSION m_nAddressExtention;
A2L_DAQ_IDENTIFICATION_FIELD_TYPE m_nIdentificationFieldType;
A2L_DAQ_GRANULARITY_ODT_ENTRY_SIZE m_nGranularityOdtSize;
unsigned char m_cMaxOdtEntrySize; /* MAX_ODT_ENTRY_SIZE_DAQ */
A2L_OverloadIndication m_nOverloadIndication;
A2L_StimBlock m_nStimBlock;
A2l_DaqTimeStampSupported m_nTimeStampSupported;
std::list <A2L_DaqList> m_nDaqList;
};
#endif
Loading…
Cancel
Save