#ifndef __UDS_TP_H_
#define __UDS_TP_H_
/*
#define N_PCITYPE_SF 0
#define N_PCITYPE_FF 1
#define N_PCITYPE_CF 2
#define N_PCITYPE_FC 3

typedef enum
{
    COMM_Free = 0,
    COMM_Send_FC,
    COMM_Wait_FC,
    COMM_Wait_CF,
    COMM_Send_Frame,
    COMM_WaitServiceHandle,
} e_CommunicateStatus;

typedef union
{
    struct
    {
        unsigned char SF_DL : 4;
        unsigned char N_PCItype : 4;

        unsigned char Data1 : 8;
        unsigned char Data2 : 8;
        unsigned char Data3 : 8;
        unsigned char Data4 : 8;
        unsigned char Data5 : 8;
        unsigned char Data6 : 8;
        unsigned char Data7 : 8;
    } SF_Format;

    struct
    {
        unsigned char FF_DL_H : 4;
        unsigned char N_PCItype : 4;

        unsigned char FF_DL_L : 8;

        unsigned char Data2 : 8;
        unsigned char Data3 : 8;
        unsigned char Data4 : 8;
        unsigned char Data5 : 8;
        unsigned char Data6 : 8;
        unsigned char Data7 : 8;
    } FF_Format;

    struct
    {
        unsigned char SN : 4;
        unsigned char N_PCItype : 4;

        unsigned char Data1 : 8;
        unsigned char Data2 : 8;
        unsigned char Data3 : 8;
        unsigned char Data4 : 8;
        unsigned char Data5 : 8;
        unsigned char Data6 : 8;
        unsigned char Data7 : 8;
    } CF_Format;

    struct
    {
        unsigned char FS : 4;
        unsigned char N_PCItype : 4;

        unsigned char BS : 8;
        unsigned char STmin : 8;
        unsigned char Data3 : 8;
        unsigned char Data4 : 8;
        unsigned char Data5 : 8;
        unsigned char Data6 : 8;
        unsigned char Data7 : 8;
    } FC_Format;

    unsigned char Data[8];
} u_UDS_Message_Format;

typedef struct
{
    u_UDS_Message_Format DataMsg;
    unsigned char AnalysisStatus;
} s_UDS_Msg_Buffer;

extern s_UDS_Msg_Buffer UDS_Tx_Buffer;

extern e_CommunicateStatus CommunicateStatus;

void GetUDSMessage(unsigned char *CAN_BufAddr, unsigned char len);
unsigned char FillTxBuffer(unsigned char *Data, unsigned char len);
void ClearUDS_Msg_Buffer(s_UDS_Msg_Buffer *buffer);
void AnalysisUDSMessage(void);
void TP_SendFC(void);
void EnableUDSSend(void);
void TP_SendServiceMsg(void);
*/
#endif