第三方库
"github.com/sigurn/crc16"
//这里使用MODBUS
table := crc16.MakeTable(crc16.CRC16_MODBUS)
crc := crc16.Checksum([]byte("Hello world!"), table)
c := fmt.Sprintf("%X", crc)
fmt.Println("CRC16==",c)
fmt.Println("CRC16_MODBUS:", crc)
using the standard library hash.Hash interface
h := crc16.New(table)
h.Write([]byte("Hello world!"))
fmt.Printf("CRC16_MODBUS: %X\n", h.Sum16())//16进制的格式打印