【问题标题】:RS-232 framing errorRS-232 帧错误
【发布时间】:2014-07-16 00:41:32
【问题描述】:

这里是新人,先介绍一下我自己:

我是一名专业的火警调试工程师,但我喜欢把电子产品当作一种爱好。 我主要感兴趣的领域是各种系统之间的集成(这是我喜欢做火警的原因之一,因为它们与大型建筑物中的大多数系统接口)并且最近开始更多地参与到接口系统的串行通信,而不是无聊继电器触点。

在我的房子里,我有一个 8X8 音频/视频矩阵切换器,它将所有房间的立体声系统相互连接,这样我就可以将任何房间的音频连接到房子的任何其他房间。 这个切换器背面有一个 RS-232 串行端口,我希望我可以连接到 PI 或 arduino,这样我就可以通过 Web 界面控制它。

经过一番搜索,我在网上找到了它的协议……但不幸的是,事情并没有那么顺利。

目前我只在笔记本电脑上使用 USB-232 转换器和零调制解调器电缆,以及一个名为 232 分析器的程序...... 我可以很好地读取数据,并将数据发送到设备……但它不断吐出“帧错误”消息。

我不确定我做错了什么,请有人建议吗?这是我第一次真正使用串行,所以指针会很酷。 我确实认为的一件事是协议指定:

  • RS-232C 标准
  • 起始位 1
  • 停止位 1
  • 数据位 8
  • 奇偶校验位偶数
  • 波特率 9600bps
  • ASCII码
  • 终止

但我的分析器程序只允许我设置波特率、数据位、奇偶校验、停止位和数据格式。不是开始位。那可能是我的问题吗?如果是这样,我该如何解决? 提前非常感谢!

【问题讨论】:

  • 不,只有 1 个起始位,所以它不是您配置的东西。您应该假设该文档不正确并修改停止位、奇偶校验和波特率。
  • 你说的是图片中的EO错误信息吗?文档链接会有所帮助。
  • 八个数据位 with(偶数)奇偶校验(对于 ASCII)是一种有点不寻常的配置。如果您没有每帧发送 11 位,这可以通过 'scope 进行确认,那么这将导致帧错误。此外,请确保此“帧错误” 指的是 RS-232 数据字符,而不是消息帧。
  • 我同意与偶校验配对的 8 个数据位非常奇怪。我还建议使用不同的串行分析仪链接 RealTerm 或 Termite。我在工作中使用 232Analyzer 的许可版本并且喜欢它,但免费版本对于真正完成您似乎正在从事的工作来说过于严格。

标签: serial-port


【解决方案1】:

最常用于串行连接的格式使用 1 个起始位、8 个数据位、无奇偶校验和 1 个停止位。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-11
    • 1970-01-01
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多