QuakeGod
2023-02-01 a39501aac863381545b1da759105d5b0d2f32984
Inc/KBus.h
@@ -11,7 +11,7 @@
#define __KBUS_H__
typedef unsigned char uchar;
extern int bMaster,bSlave;
extern unsigned char bKBusMaster,bKBusSlave,bKBusRepeater;;
   enum enCMDs
   {
      cmdNone = '0',      //Nothing
@@ -49,9 +49,9 @@
extern unsigned char nCurPollId;
extern unsigned char nSeq;
extern volatile int MasterRecved;
extern volatile int MasterRecvOK;
extern volatile int SlaveRecved;
extern volatile unsigned char MasterRecved;
extern volatile unsigned char MasterRecvOK;
extern volatile unsigned char SlaveRecved;
extern unsigned int SendTimeuS;
extern volatile int RecvTimeuS;
extern int DelayuS;
@@ -143,6 +143,7 @@
      };
   };
} stChnStat;
extern stChnStat ChnStats[8];
typedef struct tagSlaveStat
@@ -189,13 +190,13 @@
typedef struct tagPacket
   {
      unsigned char Sign;      //起始标记
      unsigned char DstHost;   //目标地址
      unsigned char SrcAddr;   //源地址
      unsigned char nCMD;      //命令
      unsigned char nSEQ;      //序列号
      unsigned char PacketLen;   //数据载荷长度   不包括头部5个字节,不包括尾部BCC。
      unsigned char data[1];      //数据载荷,最末尾是BCC,数据长度为0时,实际也有一个数据。
      unsigned char Sign;      //起始标记
      unsigned char DstHost;   //目标地址
      unsigned char SrcAddr;   //源地址
      unsigned char nCMD;      //命令
      unsigned char nSEQ;      //序列号
      unsigned char PacketLen;   //数据载荷长度   不包括头部5个字节,不包括尾部BCC。
      unsigned char data[1];      //数据载荷,最末尾是BCC,数据长度为0时,实际也有一个数据。
   }stPacket,* pPacket;   
enum eResult
@@ -205,23 +206,23 @@
   S_TIMEOUT=2
}   ;
unsigned char BCC(void * pData, int nSize);
//
unsigned char KBusBCC(void * pData, int nSize);
//
   /* Make a Packet and return Packet Length */
int MakePacket(pPacket p1,uchar Src, uchar Dst, uchar nType, uchar nSEQ, uchar DataLen, void *pData );
int KBusMakePacket(pPacket p1,uchar Src, uchar Dst, uchar nType, uchar nSEQ, uchar DataLen, void *pData );
/*   */
int CheckPacket(pPacket p1,int len1);
int KBusCheckPacket(int nChn, pPacket p1, int len1);
/* */
int ParsePacket(pPacket p1, int Len1);
int KBusParsePacket(int nChn, pPacket p1, int Len1);
typedef struct tagMachineConfig
{
   int bMaster;
   int bKBusMaster;
   int nAddr;
}stMachineConfig;
/*
int InitMachine(stMachineConfig * pConfig);
int SetConfig(void );
@@ -237,11 +238,10 @@
int WriteData(void);
int GetStat(void);
*/
int KBusRepeaterFunc(int nChn);
int KBusMasterFunc(int nChn);
int KBusSlaveFunc(int nChn);
#endif   /* __KBUS_H__ */