我正在尝试通过古老的(但简单的)与微控制器进行通信XMODEM协议。我发现发送文件的两种方式是通过minicom
(交互式)和通过cx
(非交互式)。但是,无法指定有效负载大小(默认为 128 字节),而芯片预计为 64 字节。
有没有办法使用 Ubuntu 存储库、makefile 甚至 bash 脚本中的命令来发送非交互地XMODEM 上有效负载为 64 字节的文件?此外,必须支持短校验和(1 字节)。
答案1
软件包中提供了良好的自由软件 xmodem 实现的源代码lrzsz
。您可以破解源代码并sx
使用 64 字节数据包构建您自己的自定义版本。
https://ohse.de/uwe/software/lrzsz.html
但请注意,xmodem 是为 128 字节数据包设计的(我不记得曾经听说过具有更小数据包大小的实现),因为文件是总是1977 年 CP/M 上大小为 128 字节的倍数。请参阅https://en.wikipedia.org/wiki/XMODEM