此为本人开发经历,诸如“引言”、“什么是XMODEM”、“TR800介绍”......在此就不再赘述,需要了解的各位可以去“摆渡一下”... ...
那下面进入正题... ...
用串口传输文件的时候容易出错,必须采用具有差错校验的传输协议进行控制。Xmodem就是这样的一个传输控制协议,因其简单性和较好的性能而被广泛应用。它支持128 字节和1K 字节两种类型的数据包,支持三种校验方式,分别是:CHECKSUM(普通校验和),128-CRC(128字节的循环冗余校验),1K-CRC(1K字节的循环冗余校验),在出现数据包错误的情况下支持多次重传(一般为10 次)。
Xmodem 协议传输由接收程序和发送程序完成。程序开始时,发送方向接收方发送指令,请求传输文件;此时由接收程序发送协商字符,协商校验方式。一般地,如果从接受方返回的是字符“C”,则发送方采用128-CRC方式进行数据包发送;如果返回的是“