串口的数据包格式:数据包组成: 包头+消息体+包尾包头和包尾 固定不用管消息体由几个字段组成 : Length + COM + Data + Check  消息体字段说明:名称 长度 说明
Length 1 长度,COM+ Data 字节数
COM 1 命令码
Data x 数据,与命令相关
Check 1 校验和,Length+ COM+ Data 所有字节累加和的补码样例: 03+21+01+01+DA  
长度=3 ,命令=21,数据=1 , 1 ,校验和=DA
这个 校验和 DA 是怎么算出来的?
用Java如何实现啊?
急急急急急急啊!在线等,各位高手请指教啊

解决方案 »

  1.   

    生成校验和有多种算法,不同的算法生成的校验和长度不一样。你用字节累加生成校验和,不太好。假如传输错误,而计算校验和时却正确,这种情况的概率很大。有很多校验和算法出现,就是为了使这种概率的减小。
    建议你搜搜校验和算法。
    生成字节码时,我认为先把数据转成Unicode,再计算校验和,然后传输。