【问题标题】:Receiving a file via XModem on HyperTerminal在超级终端上通过 XModem 接收文件
【发布时间】:2014-11-17 18:15:33
【问题描述】:

我必须通过串行端口将文件发送到我的程序,该程序使用超级终端和 XMODEM 协议在嵌入式设备上运行。串行通信正常(9600 波特、1 个停止位、无奇偶校验、8 个数据位、无流量控制),因为发送命令和接收应答都正常工作。

当我发送“上传”命令时,设备会在准备就绪时应答并等待文件。在 HyperTerminal 中,然后转到 Transfer->Send File...,选择一个文件和 XMODEM 协议,然后单击“Send”。点击发送后,上传未开始并出现超时消息。

在调试时,我看到程序没有从串口接收到任何字节,但是如果我发送一个字节,点击一个键,程序就会接收到它。我可以假设问题是超级终端没有发送任何东西吗?这是为什么呢?

【问题讨论】:

  • 您可能需要重新措辞这个问题,以便它明确地与软件开发有关。如果您正在开发嵌入式设备 XMODEM 代码,这可能是一个合理的问题,但从表面上看,它对于 SO 来说是题外话,并且可能会被关闭。
  • “re-word”是什么意思?
  • 我的意思是按照描述的方式重写它,以使问题适合 StackOverflow 的范围。请参阅 stackoverflow.com/help/on-topicstackoverflow.com/help/dont-ask。到目前为止,您已经吸引了一张接近投票,但该用户无奈地选择不发表评论以解释他的反对意见。
  • 经过反思,这个问题可能没问题,“在调试时,...”这句话表明这是一个软件开发问题,但这可能在您的无段落文本中丢失了。跨度>

标签: file upload embedded hyperterminal xmodem


【解决方案1】:

XMODEM 传输由接收​​方而不是发送方发起。当接收设备发送 SOH (XMODEM) 或“C” (XMODEM-CRC/1K) 时,传输开始。如果接收端不发起传输,则不会发生传输。

您可能会发现您必须从发送端开始传输,然后在接收端启动传输。或者,在等待传输时,接收端可能会重复发送起始字符,直到收到响应(或超时)。

【讨论】:

  • 谢谢。问题是接收者发送的第一个“C”太早了,下一个太晚了。
猜你喜欢
  • 2017-08-15
  • 1970-01-01
  • 2015-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多