Skip to content
/ go-crc Public

crc 相关算法,主要包括 lrc, bcc, crc3,crc4, crc5, crc6, crc7, crc12, crc24 和 crc40 算法

License

Notifications You must be signed in to change notification settings

deatil/go-crc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crc 相关算法

项目介绍

  • crc 相关算法
  • 可用检验方法:Crc3, Crc4Itu, Crc5Epc, Crc5Itu, Crc5Usb, Crc6Itu, Crc7Mmc, BCC, LRC
  • crc12 可用检验方法:ChecksumCRC12
  • crc24 可用检验方法:ChecksumCRC24, ChecksumFLEXRAY_A, ChecksumFLEXRAY_B
  • crc40 可用检验方法:ChecksumGSM

下载安装

go get -u github.com/deatil/go-crc

使用

package main

import (
    "fmt"
    "encoding/hex"

    "github.com/deatil/go-crc/crc"
)

func main() {
    // 16进制字符转为 byte
    crcHex, _ := hex.DecodeString("020f")

    crcData := crc.Crc6Itu(crcHex)
    crcData2 := crc.ToHexString(crcData, "crc6")

    fmt.Println("计算结果为:", crcData2)
}

开源协议

  • 本软件包遵循 Apache2 开源协议发布,在保留本软件包版权的情况下提供个人及商业免费使用。

版权