Documentation ¶
Index ¶
- Constants
- Variables
- func Checksum(data []byte, params Params) uint16
- func ChecksumARC(data []byte) uint16
- func ChecksumAUG_CCITT(data []byte) uint16
- func ChecksumBUYPASS(data []byte) uint16
- func ChecksumCCITT(data []byte) uint16
- func ChecksumCCITT_FALSE(data []byte) uint16
- func ChecksumCDMA2000(data []byte) uint16
- func ChecksumCRC_A(data []byte) uint16
- func ChecksumDDS_110(data []byte) uint16
- func ChecksumDECT_R(data []byte) uint16
- func ChecksumDECT_X(data []byte) uint16
- func ChecksumDNP(data []byte) uint16
- func ChecksumGENIBUS(data []byte) uint16
- func ChecksumIBM(data []byte) uint16
- func ChecksumKERMIT(data []byte) uint16
- func ChecksumMAXIM(data []byte) uint16
- func ChecksumMCRF4XX(data []byte) uint16
- func ChecksumMODBUS(data []byte) uint16
- func ChecksumRIELLO(data []byte) uint16
- func ChecksumT10_DIF(data []byte) uint16
- func ChecksumTELEDISK(data []byte) uint16
- func ChecksumTMS37157(data []byte) uint16
- func ChecksumUSB(data []byte) uint16
- func ChecksumXMODEM(data []byte) uint16
- func ChecksumXMODEM2(data []byte) uint16
- func ChecksumX_25(data []byte) uint16
- func ToBinString(data uint16) string
- func ToHexString(data uint16) string
- func ToReverseHexBinString(data uint16) string
- func ToReverseHexString(data uint16) string
- type CRC
- func (this *CRC) Checksum(data []byte) uint16
- func (this *CRC) Complete(crc uint16) uint16
- func (this *CRC) GetParams() Params
- func (this *CRC) GetTable() [256]uint16
- func (this *CRC) Init() uint16
- func (this *CRC) MakeTable() *CRC
- func (this *CRC) Update(crc uint16, data []byte) uint16
- func (this *CRC) WithParams(params Params) *CRC
- func (this *CRC) WithTable(table [256]uint16) *CRC
- type Hash16
- type Params
Constants ¶
View Source
const Size = 2
大小
Variables ¶
View Source
var ( // "CRC-16/IBM" x16 + x15 + x2 + 1 CRC16_IBM = Params{0x8005, 0x0000, true, true, 0x0000} // "CRC-16/ARC" CRC16_ARC = Params{0x8005, 0x0000, true, true, 0x0000} // "CRC-16/AUG-CCITT" CRC16_AUG_CCITT = Params{0x1021, 0x1D0F, false, false, 0x0000} // "CRC-16/BUYPASS" CRC16_BUYPASS = Params{0x8005, 0x0000, false, false, 0x0000} // "CRC-16/CCITT" x16 + x15 + x2 + 1 CRC16_CCITT = Params{0x1021, 0x0000, true, true, 0x0000} // "CRC-16/CCITT-FALSE" x16 + x15 + x2 + 1 CRC16_CCITT_FALSE = Params{0x1021, 0xFFFF, false, false, 0x0000} // "CRC-16/CDMA2000" CRC16_CDMA2000 = Params{0xC867, 0xFFFF, false, false, 0x0000} // "CRC-16/DDS-110" CRC16_DDS_110 = Params{0x8005, 0x800D, false, false, 0x0000} // "CRC-16/DECT-R" CRC16_DECT_R = Params{0x0589, 0x0000, false, false, 0x0001} // "CRC-16/DECT-X" CRC16_DECT_X = Params{0x0589, 0x0000, false, false, 0x0000} // "CRC-16/DNP" x16 + x13 + x12 + x11 + x10 + x8 + x6 + x5 + x2 + 1 CRC16_DNP = Params{0x3D65, 0x0000, true, true, 0xFFFF} // "CRC-16/EN-13757" CRC16_EN_13757 = Params{0x3D65, 0x0000, false, false, 0xFFFF} // "CRC-16/GENIBUS" CRC16_GENIBUS = Params{0x1021, 0xFFFF, false, false, 0xFFFF} // "CRC-16/MAXIM" x16 + x15 + x2 + 1 CRC16_MAXIM = Params{0x8005, 0x0000, true, true, 0xFFFF} // "CRC-16/MCRF4XX" CRC16_MCRF4XX = Params{0x1021, 0xFFFF, true, true, 0x0000} // "CRC-16/RIELLO" CRC16_RIELLO = Params{0x1021, 0xB2AA, true, true, 0x0000} // "CRC-16/T10-DIF" CRC16_T10_DIF = Params{0x8BB7, 0x0000, false, false, 0x0000} // "CRC-16/TELEDISK" CRC16_TELEDISK = Params{0xA097, 0x0000, false, false, 0x0000} // "CRC-16/TMS37157" CRC16_TMS37157 = Params{0x1021, 0x89EC, true, true, 0x0000} // "CRC-16/USB" x16 + x15 + x2 + 1 CRC16_USB = Params{0x8005, 0xFFFF, true, true, 0xFFFF} // "CRC-16/CRC-A" CRC16_CRC_A = Params{0x1021, 0xC6C6, true, true, 0x0000} // "CRC-16/KERMIT" CRC16_KERMIT = Params{0x1021, 0x0000, true, true, 0x0000} // "CRC-16/MODBUS" x16 + x15 + x2 + 1 CRC16_MODBUS = Params{0x8005, 0xFFFF, true, true, 0x0000} // "CRC-16/X-25" x16 + x15 + x2 + 1 CRC16_X_25 = Params{0x1021, 0xFFFF, true, true, 0xFFFF} // "CRC-16/XMODEM" x16 + x15 + x2 + 1 CRC16_XMODEM = Params{0x1021, 0x0000, false, false, 0x0000} // "CRC-16/XMODEM2" x16 + x15 + x2 + 1 CRC16_XMODEM2 = Params{0x8408, 0x0000, true, true, 0x0000} )
类型列表
Functions ¶
func ChecksumAUG_CCITT ¶ added in v1.0.10002
生成 AUG_CCITT
Types ¶
type CRC ¶ added in v1.0.10005
type CRC struct {
// contains filtered or unexported fields
}
表格
type Params ¶
type Params struct { // 生成项的简写,以16进制表示。 // 例如:CRC-32 即是0x04C11DB7, // 忽略了最高位的"1",即完整的生成项是0x104C11DB7。 Poly uint16 // 这是算法开始时寄存器(crc)的初始化预置值,十六进制表示。 Init uint16 // 待测数据的每个字节是否按位反转,True或False。 RefIn bool // 在计算后之后,异或输出之前,整个数据是否按位反转,True或False。 RefOut bool // 计算结果与此参数异或后得到最终的CRC值。 XorOut uint16 }
参数 NAME:参数模型名称。 WIDTH:宽度,即CRC比特数。位数为:16
Click to show internal directories.
Click to hide internal directories.