添加一些基本类
This commit is contained in:
37
base/crc.h
Normal file
37
base/crc.h
Normal file
@@ -0,0 +1,37 @@
|
||||
#ifndef CRC_H
|
||||
#define CRC_H
|
||||
#include <QObject>
|
||||
#include "stdint-gcc.h"
|
||||
#include "QString"
|
||||
#include "QByteArray"
|
||||
|
||||
#define DECODE 0
|
||||
#define ENCODE 1
|
||||
|
||||
typedef union{
|
||||
int32_t l_data;
|
||||
uint32_t ul_data;
|
||||
uint8_t uc_databuf[4];
|
||||
char c_databuf[4];
|
||||
uint16_t us_databuf[2];
|
||||
int16_t s_databuf[2];
|
||||
} ConverBuf;
|
||||
|
||||
class crc
|
||||
{
|
||||
public:
|
||||
crc();
|
||||
static int8_t CheckSumCode(uint8_t CODEMODE, uint8_t *pBuffer, uint16_t Len, uint16_t offset, uint8_t *CHKA, uint8_t *CHKB);
|
||||
static int CheckSumCode(uint8_t CODEMODE, QByteArray pBuffer, uint16_t Len, uint16_t offset, uint8_t *CHKA, uint8_t *CHKB);
|
||||
|
||||
static QString byte_array_to_string(QByteArray data);
|
||||
static QString byte_array_to_int_string(QByteArray data);
|
||||
static QString uint8_array_to_string(uint8_t * buf,int len);
|
||||
|
||||
static uint8_t crc8(uint8_t *Ptr,uint8_t num);
|
||||
static void crc16(uint8_t *data, int offset, int len,uint8_t *lb,uint8_t *hb);
|
||||
static uint32_t crc32(const QByteArray &data_buf);
|
||||
|
||||
};
|
||||
|
||||
#endif // CRC_H
|
Reference in New Issue
Block a user