在 ESP32 上通过UART启用YModem协议进行文件传输

文末提供完整的代码下载链接

介绍

YMODEM是使用调制解调器连接在一起的微型计算机之间使用的文件传输协议。它主要用于在公告板系统之间传输文件。YMODEM 由Chuck Forsberg开发,作为XMODEM的扩展,并首先在他的CP/M YAM程序中实现。它最初也称为 YAM,1985 年由原始 XMODEM 的作者 Ward Christensen正式命名为“YMODEM” 。

YMODEM 以三种方式扩展了 XMODEM,结合了其他扩展 XMODEM 品种中的功能。与 XMODEM-CRC 一样,YMODEM用 16 位循环冗余校验(CRC) 取代了 8 位校验和,但使其成为默认的校正形式而不是可选形式。TeLink 添加了发送文件名和大小的“块 0”标头,这允许批量传输(单个会话中的多个文件),并且无需在文件末尾添加填充。最后,YMODEM 允许块大小从原来的 128 字节数据增加到 1024 字节,如XMODEM-1k中那样,这大大提高了更快调制解调器的吞吐量。

Forsberg 使用所有这些功能作为运行时选项构建了标准,允许单个协议驱动程序在连接到非 YAM 系统时回退到 XMODEM-CRC 甚至 XMODEM。他相信程序员希望在任何给定平台上实现尽可能多的这些功能。他沮丧地发现,大多数实现实际上只提供了 CRC-16 超过 1k 的块大小,未能实现“块 0”,同时继续使用 YMODEM 名称。结果是发布了许多相互不兼容的 YMODEM 实现,并使用YMODEM Batch名称来明确指示那些确

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TD程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值