XModeom-1K主板升级方式

来自东骏科技波塞冬平台开发者文档
跳转至: 导航搜索

1K Xmodem 文件传输协议


一.超级终端1K Xmodem文件传输协议


  超级终端的1K Xmodem文件传输协议为基于点对点连接的服务与客户端间的通信,提供了一种固定包长度的简单的连续文件传输协议。每一个包都包含1024字节的文件数据,并且都单独的被接收客户端响应。每次只能传输一个文件,并且失败后只能从新开始传输。

  超级终端的1K Xmodem 文件传输协议是超级终端Xmodem文件传输协议的扩展,包大小由Xmodem中的128字节增加到1024字节。该协议通过使用一个交替的开始字符(包头SOH<0x02>)来标识1K Xmodem包的开始。

二.1K Xmodem协议传输流程


  超级终端1K Xmodem文件传输协议并不需要向接收客户端发送待发送文件的名称,该文件将会被接收方授予一个局部有效的文件名。

  要开始文件传输的过程,首先接收方向发送方发送一个轮询字符,来提示发送方客户端已经准备好了。如果接收方支持check-sum (CRC)校验,则轮询字符可以用0x43 (ASCII 字母 C);如果接收方只支持旧的checksum (求总和)校验,则轮询字符可以用0x15 (NACK线控制字符)。

  发送方响应接收方的启动字符,开始发送文件数据包,每个包都是1024字节的固定长度。如果最后一个文件数据包不足1024字节,则利用NACK(0x1A)填充到1024字节。接收方通过ACK(正常接收)或者NACK(非正接收)来响应每一个包。

  如果发送方收到ACK,则发送下一个包知道文件传输完成;乳沟发送方收到NACK,则重新发送上一个包。

  当发送方发送完成后,发送EOT通知接收方文件传输结束;接收方发送ACK来响应;发送方收到ACK后则文件传输完成。

  文件数据包的结构:

<SOH><包序号><包序号反码><文件数据(1024字节)><校验位>

 

三.控制字符


字符(16进制) 含义
0x01 SOH:包头
0x04 EOT:结束文件传输
0x06 ACK:正常响应,如:数据包正确接收
0x15 NACK:非正常响应
0x18 CAN:取消文件传输
0x43 C:ASCII字符C