gpt4 book ai didi

linux - 如何证明 RS 232 全调制解调器、RS 422 工作 PC 到 PC 和 LOOP BACK

转载 作者:太空宇宙 更新时间:2023-11-04 11:36:56 26 4
gpt4 key购买 nike

你好,我是一个新手,试图证明 RS 232 全调制解调器和一个 RS 422(RX、TX、RTS、CTS)的工作

这 2 个端口位于定制设计的板上,我需要证明它们正常工作。

我能够在寄存器级别确认工作,但我需要使用 Minicom 等软件或任何其他自定义程序来证明工作正常。

我如何使用 DB 9 连接和 LOOP BACK 证明这些端口从一台 PC 到另一台 PC 的工作

有人可以帮我解决这个问题吗?我是否需要使用任何额外的硬件来证明它在 Linux 中的工作?

最佳答案

最常见的串行端口测试类型可能是环回测试。创建一个测试夹具,将端口的输出引脚连接到输入引脚(TX->RX、RTS->CTS 等)。如果每个输出引脚都没有匹配的输入引脚,则需要进行三向连接。

创建环回后,您需要编写软件来执行引脚。如果 TX 和 RX 已连接,您可以发送一个字节并验证它是否被回显。对于控制引脚,切换它们并确保连接的另一侧看到过渡。 请确保您使用了串口的每个引脚。

请注意,您应该在多个波特率下运行 TX->RX 数据环回。设计中可能存在信号完整性问题,该问题仅在较高波特率下才会出现。电路板上也可能存在不良信号连接,在较高波特率下被电感和电容掩盖。因此,最好以最低波特率、最快波特率和中间的 1-2 运行数据环回。

您应该做的另一件事是波特率准确性测试。这将证明驱动 UART 的时钟以正确的频率运行,并且被正确分频。以特定波特率传输 X 个字节并验证它们在预期的时间内到达。要获得准确的数字,您需要绕过操作系统串行端口驱动程序中的任何缓冲(例如使用直接寄存器 I/O),并确保适应任何起始/停止位开销(参见下面的注释)。

但是,环回测试并不详尽。它只能证明设备可以与自己对话。该设备可能仍然存在一些无法在本地检测到的缺陷(例如电压水平)。因此,您还应该使用外部硬件运行一些测试。将您的电路板连接到另一个系统并运行测试(例如使用 minicom)。确保他们可以互相交谈。

即使是外部通信测试也可能遗漏一些东西。您的电路板的信号质量可能仍然很差,但它恰好对其他设备来说已经足够好了。 要准确验证信号质量/时序,您需要一台示波器。

在运行通信测试时,将示波器探头连接到各种信号并验证信号完整性。确保电压电平有效,您看到干净的低/高位转换,并且数据引脚的时序对于指定的波特率显示正确。 (与前面描述的基于软件的方法相比,示波器是一种更准确的波特率测量方法。)

关于linux - 如何证明 RS 232 全调制解调器、RS 422 工作 PC 到 PC 和 LOOP BACK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7125639/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com