| | |
| | | #define __KBUS_H__
|
| | | typedef unsigned char uchar;
|
| | |
|
| | | extern int bMaster,bSlave;
|
| | | extern unsigned char bKBusMaster,bKBusSlave,bKBusRepeater;;
|
| | | enum enCMDs
|
| | | {
|
| | | cmdNone = '0', //Nothing
|
| | |
| | |
|
| | | extern unsigned char BufferIn[16];
|
| | | extern unsigned char BufferOut[16];
|
| | | extern int nAddr;
|
| | | extern int nChilds;
|
| | | extern unsigned char nAddr;
|
| | | extern unsigned char nChilds;
|
| | | extern int ChildStat[16];
|
| | | extern int nCurPollId;
|
| | | extern int nSeq;
|
| | | extern unsigned char nCurPollId;
|
| | | extern unsigned char nSeq;
|
| | |
|
| | | extern int MasterRecved;
|
| | | 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;
|
| | |
| | | };
|
| | | };
|
| | | } stChnStat;
|
| | |
|
| | | extern stChnStat ChnStats[8];
|
| | |
|
| | | typedef struct tagSlaveStat
|
| | |
| | | typedef struct tagPacket
|
| | | {
|
| | | unsigned char Sign; //起始标记
|
| | | unsigned char DstAddr; //目标地址
|
| | | unsigned char DstHost; //目标地址
|
| | | unsigned char SrcAddr; //源地址
|
| | | unsigned char nCMD; //命令
|
| | | unsigned char nSEQ; //序列号
|
| | |
| | | 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 );
|
| | |
| | | int WriteData(void);
|
| | |
|
| | | int GetStat(void);
|
| | |
|
| | |
|
| | |
|
| | | |
| | |
|
| | | */
|
| | | int KBusRepeaterFunc(int nChn);
|
| | | int KBusMasterFunc(int nChn);
|
| | | int KBusSlaveFunc(int nChn);
|
| | |
|
| | | #endif /* __KBUS_H__ */
|
| | |
|