现象:用电脑给一个测量仪表发送数据,可以正确返回数据。
例如:发送- 01 01 00 00 00 06 BC 08 (含CRC校验码)
仪表返回:-01 01 01 00 51 88 (含CRC校验码)
改用单片机给仪表发送数据,返回数据就不正确了。
例如:发送- 01 01 00 00 00 06 BC 08 (含CRC校验码)
仪表返回: -C0 81 02 00 00 B9 B8 (含CRC校验码)
所用单片机:8051F340,波特率9600 ,8位数据。
判断通信数据正确错误方法:CRC校验
例如:C0 81 02 00 00 B9 B8 (CRC校验码:0XB8B9 )
这组数据的校验码不是 0XB8B9 按CRC16计算应该是:0XADED |