crc16.hpp

来自「一个modbus协议的opc server」· HPP 代码 · 共 34 行

HPP
34
字号
#ifndef __AFXWIN_H__
	#error include 'stdafx.h' before including this file for PCH
#endif

#ifndef _CRC16_h_
#define _CRC16_h_

#define HI4BITS(w)   ((BYTE) (((BYTE) (w) >> 4) & 0xF)) 
#define LO4BITS(w)   ((BYTE) ((w) & 0xF))  

class CRC16 {

protected:
  

private:
     static const UCHAR auchCRCHi[];
	 static const UCHAR auchCRCLo[];
public:
	 CRC16();
	 ~CRC16();
	 WORD CalcCrc (UCHAR *Str, WORD NumBytes);
	 WORD CalcCrc (CByteArray& abyMessage);
	 WORD CalcCrcFast(UCHAR *puchMsg, WORD usDataLen);
	 WORD CalcCrcFast(CByteArray& abyMessage);
	 WORD CalcCrcFast(CByteArray& abyMessage , WORD wnLength);
	  //*auchMsg 		/* message to calculate  */
      //usDataLen 		/* LRC upon quantity of  */
										/* bytes in message      */
	 static BYTE LRC(BYTE *auchMsg, WORD usDataLen);

};

#endif  // _CRC16_h_

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?