xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_crc(CRC 校验)

Common CRC bitwise operation functions. 更多...

函数

uint8_t xt_crc4_itu (uint8_t *data, uint16_t length)
uint8_t xt_crc5_epc (uint8_t *data, uint16_t length)
uint8_t xt_crc5_itu (uint8_t *data, uint16_t length)
uint8_t xt_crc5_usb (uint8_t *data, uint16_t length)
uint8_t xt_crc6_itu (uint8_t *data, uint16_t length)
uint8_t xt_crc7_mmc (uint8_t *data, uint16_t length)
uint8_t xt_crc8 (uint8_t *data, uint16_t length)
uint8_t xt_crc8_itu (uint8_t *data, uint16_t length)
uint8_t xt_crc8_rohc (uint8_t *data, uint16_t length)
uint8_t xt_crc8_maxim (uint8_t *data, uint16_t length)
uint16_t xt_crc16 (uint8_t *data, uint16_t length)
uint16_t xt_crc16_maxim (uint8_t *data, uint16_t length)
uint16_t xt_crc16_usb (uint8_t *data, uint16_t length)
uint16_t xt_crc16_modbus (uint8_t *data, uint16_t length)
uint16_t xt_crc16_ccitt (uint8_t *data, uint16_t length)
uint16_t xt_crc16_ccitt_false (uint8_t *data, uint16_t length)
uint16_t xt_crc16_x25 (uint8_t *data, uint16_t length)
uint16_t xt_crc16_xmodem (uint8_t *data, uint16_t length)
uint16_t xt_crc16_dnp (uint8_t *data, uint16_t length)
uint32_t xt_crc24 (uint8_t *data, uint16_t length)
uint32_t xt_crc24_ble (uint8_t *data, uint16_t length)
uint32_t xt_crc24_flexraya (uint8_t *data, uint16_t length)
uint32_t xt_crc24_flexrayb (uint8_t *data, uint16_t length)
uint32_t xt_crc24_lte_a (uint8_t *data, uint16_t length)
uint32_t xt_crc24_lte_b (uint8_t *data, uint16_t length)
uint32_t xt_crc24_os9 (uint8_t *data, uint16_t length)
uint32_t xt_crc24_interlaken (uint8_t *data, uint16_t length)
uint32_t xt_crc32 (uint8_t *data, uint16_t length)
uint32_t xt_crc32_mpeg2 (uint8_t *data, uint16_t length)

详细描述

Common CRC bitwise operation functions.

函数说明

◆ xt_crc16()

uint16_t xt_crc16 ( uint8_t * data,
uint16_t length )

Name: CRC-16 Poly: 0x8005 ( x16+x15+x2+1 ) Init: 0x0000 Refin: True Refout: True Xorout: 0x0000 Alias: CRC-16/IBM,CRC-16/ARC,CRC-16/LHA

◆ xt_crc16_ccitt()

uint16_t xt_crc16_ccitt ( uint8_t * data,
uint16_t length )

Name: CRC-16/CCITT Poly: 0x1021 ( x16+x12+x5+1 ) Init: 0x0000 Refin: True Refout: True Xorout: 0x0000 Alias: CRC-CCITT,CRC-16/CCITT-TRUE,CRC-16/KERMIT

◆ xt_crc16_ccitt_false()

uint16_t xt_crc16_ccitt_false ( uint8_t * data,
uint16_t length )

Name: CRC-16/CCITT-FALSE Poly: 0x1021 ( x16+x12+x5+1 ) Init: 0xFFFF Refin: False Refout: False Xorout: 0x0000

◆ xt_crc16_dnp()

uint16_t xt_crc16_dnp ( uint8_t * data,
uint16_t length )

Name: CRC-16/DNP Poly: 0x3D65 ( x16+x13+x12+x11+x10+x8+x6+x5+x2+1 ) Init: 0x0000 Refin: True Refout: True Xorout: 0xFFFF Use: M-Bus,ect.

◆ xt_crc16_maxim()

uint16_t xt_crc16_maxim ( uint8_t * data,
uint16_t length )

Name: CRC-16/MAXIM Poly: 0x8005 ( x16+x15+x2+1 ) Init: 0x0000 Refin: True Refout: True Xorout: 0xFFFF

◆ xt_crc16_modbus()

uint16_t xt_crc16_modbus ( uint8_t * data,
uint16_t length )

Name: CRC-16/MODBUS Poly: 0x8005 ( x16+x15+x2+1 ) Init: 0xFFFF Refin: True Refout: True Xorout: 0x0000

◆ xt_crc16_usb()

uint16_t xt_crc16_usb ( uint8_t * data,
uint16_t length )

Name: CRC-16/USB Poly: 0x8005 ( x16+x15+x2+1 ) Init: 0xFFFF Refin: True Refout: True Xorout: 0xFFFF

◆ xt_crc16_x25()

uint16_t xt_crc16_x25 ( uint8_t * data,
uint16_t length )

Name: CRC-16/X25 Poly: 0x1021 ( x16+x12+x5+1 ) Init: 0xFFFF Refin: True Refout: True Xorout: 0XFFFF

◆ xt_crc16_xmodem()

uint16_t xt_crc16_xmodem ( uint8_t * data,
uint16_t length )

Name: CRC-16/XMODEM Poly: 0x1021 ( x16+x12+x5+1 ) Init: 0x0000 Refin: False Refout: False Xorout: 0x0000 Alias: CRC-16/ZMODEM,CRC-16/ACORN

◆ xt_crc24()

uint32_t xt_crc24 ( uint8_t * data,
uint16_t length )

Name: CRC-24 Poly: 0x864CFB ( x24+x23+x18+x17+x14+x11+x10+x7+x6+x5+x4+x3+x1+1 ) Init: 0xB704CE Refin: True Refout: True Xorout: 0x000000 Alias: CRC-24/OPENPGP

◆ xt_crc24_ble()

uint32_t xt_crc24_ble ( uint8_t * data,
uint16_t length )

Name: CRC-24/BLE Poly: 0x00065B ( x24+x10+x9+x6+x4+x3+x1+1 ) Init: 0x555555 Refin: True Refout: True Xorout: 0x000000

◆ xt_crc24_flexraya()

uint32_t xt_crc24_flexraya ( uint8_t * data,
uint16_t length )

Name: CRC-24/FLEXRAY-A Poly: 0x5D6DCB ( x24+x22+x20+x19+x18+x16+x14+x13+x11+x10+x8+x7+x6+x3+x1+1 ) Init: 0xFEDCBA Refin: True Refout: True Xorout: 0x000000

◆ xt_crc24_flexrayb()

uint32_t xt_crc24_flexrayb ( uint8_t * data,
uint16_t length )

Name: CRC-24/FLEXRAY-B Poly: 0x5D6DCB ( x24+x22+x20+x19+x18+x16+x14+x13+x11+x10+x8+x7+x6+x3+x1+1 ) Init: 0xABCDEF Refin: True Refout: True Xorout: 0x000000

◆ xt_crc24_interlaken()

uint32_t xt_crc24_interlaken ( uint8_t * data,
uint16_t length )

Name: CRC-24/INTERLAKEN Poly: 0x328B63 ( x24+x21+x20+x17+x15+x11+x9+x8+x6+x5+x1+1 ) Init: 0xFFFFFF Refin: False Refout: False Xorout: 0xFFFFFF

◆ xt_crc24_lte_a()

uint32_t xt_crc24_lte_a ( uint8_t * data,
uint16_t length )

Name: CRC-24/LTE-A Poly: 0x864CFB ( x24+x23+x18+x17+x14+x11+x10+x7+x6+x5+x4+x3+x1+1 ) Init: 0x000000 Refin: False Refout: False Xorout: 0x000000

◆ xt_crc24_lte_b()

uint32_t xt_crc24_lte_b ( uint8_t * data,
uint16_t length )

Name: CRC-24/LTE-B Poly: 0x800063 ( x24+x23+x6+x5+x1+1 ) Init: 0x000000 Refin: False Refout: False Xorout: 0x000000

◆ xt_crc24_os9()

uint32_t xt_crc24_os9 ( uint8_t * data,
uint16_t length )

Name: CRC-24/OS-9 Poly: 0x800063 ( x24+x23+x6+x5+x1+1 ) Init: 0xFFFFFF Refin: False Refout: False Xorout: 0xFFFFFF

◆ xt_crc32()

uint32_t xt_crc32 ( uint8_t * data,
uint16_t length )

Name: CRC-32 Poly: 0x4C11DB7 ( x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 ) Init: 0xFFFFFFF Refin: True Refout: True Xorout: 0xFFFFFFF Alias: CRC_32/ADCCP Use: WinRAR,ect.

◆ xt_crc32_mpeg2()

uint32_t xt_crc32_mpeg2 ( uint8_t * data,
uint16_t length )

Name: CRC-32/MPEG-2 Poly: 0x4C11DB7 ( x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 ) Init: 0xFFFFFFF Refin: False Refout: False Xorout: 0x0000000

◆ xt_crc4_itu()

uint8_t xt_crc4_itu ( uint8_t * data,
uint16_t length )

Name: CRC-4/ITU Poly: 0x03 ( x4+x+1 ) Init: 0x00 Refin: True Refout: True Xorout: 0x00

◆ xt_crc5_epc()

uint8_t xt_crc5_epc ( uint8_t * data,
uint16_t length )

Name: CRC-5/EPC Poly: 0x09 ( x5+x3+1 ) Init: 0x09 Refin: False Refout: False Xorout: 0x00

◆ xt_crc5_itu()

uint8_t xt_crc5_itu ( uint8_t * data,
uint16_t length )

Name: CRC-5/ITU Poly: 0x15 ( x5+x4+x2+1 ) Init: 0x00 Refin: True Refout: True Xorout: 0x00

◆ xt_crc5_usb()

uint8_t xt_crc5_usb ( uint8_t * data,
uint16_t length )

Name: CRC-5/USB Poly: 0x05 ( x5+x2+1 ) Init: 0x1F Refin: True Refout: True Xorout: 0x1F

◆ xt_crc6_itu()

uint8_t xt_crc6_itu ( uint8_t * data,
uint16_t length )

Name: CRC-6/ITU Poly: 0x03 ( x6+x+1 ) Init: 0x00 Refin: True Refout: True Xorout: 0x00

◆ xt_crc7_mmc()

uint8_t xt_crc7_mmc ( uint8_t * data,
uint16_t length )

Name: CRC-7/MMC Poly: 0x09 ( x7+x3+1 ) Init: 0x00 Refin: False Refout: False Xorout: 0x00 Use: MultiMediaCard,SD,ect.

◆ xt_crc8()

uint8_t xt_crc8 ( uint8_t * data,
uint16_t length )

Name: CRC-8 Poly: 0x07 ( x8+x2+x+1 ) Init: 0x00 Refin: False Refout: False Xorout: 0x00

◆ xt_crc8_itu()

uint8_t xt_crc8_itu ( uint8_t * data,
uint16_t length )

Name: CRC-8/ITU Poly: 0x07 ( x8+x2+x+1 ) Init: 0x00 Refin: False Refout: False Xorout: 0x55 Alias: CRC-8/ATM

◆ xt_crc8_maxim()

uint8_t xt_crc8_maxim ( uint8_t * data,
uint16_t length )

Name: CRC-8/MAXIM Poly: 0x31 ( x8+x5+x4+1 ) Init: 0x00 Refin: True Refout: True Xorout: 0x00 Alias: DOW-CRC,CRC-8/IBUTTON Use: Maxim(Dallas)'s some devices,e.g. DS18B20

◆ xt_crc8_rohc()

uint8_t xt_crc8_rohc ( uint8_t * data,
uint16_t length )

Name: CRC-8/ROHC Poly: 0x07 ( x8+x2+x+1 ) Init: 0xFF Refin: True Refout: True Xorout: 0x00