【问题标题】:C# - Emulate device - Parallel to Serial PortC# - 模拟设备 - 并行到串行端口
【发布时间】:2009-09-03 17:28:45
【问题描述】:

我们正在尝试模拟使用并行端口运行的设备。

我们有在 RS232 上运行的完全相同的型号,可以在一个端口到另一个端口运行零调制解调器电缆,并使用以下设置模拟设备:

_port = new SerialPort
                {
                    PortName = comport,
                    BaudRate = 9600,
                    DataBits = 8,
                    Parity = Parity.None,
                    StopBits = StopBits.One,
                    DtrEnable = true,
                    RtsEnable = true,
                };

因此,为了模拟具有并行端口的相同设备,我们只需使用一条从并行端口连接到 RS-232 端口的电缆。虽然,我们不确定它是否是我们需要的正确电缆。

允许并行设备工作的 System.IO.Ports.SerialPort 设置是什么?

我们有一个串口监控程序,没有数据通过,这让我们认为我们的波特率,停止位,数据位等不正确。

有谁知道如何将并行通信转换为另一端的 RS-232?

有什么建议吗?这甚至可能吗?我们希望避免使用 2 个并行端口并使用 C# 进行并行通信(这会很耗时)。

【问题讨论】:

    标签: c# .net serial-port parallel-port


    【解决方案1】:

    您需要的不仅仅是一根电缆,还需要一个转换器。 Here is one such device。这个模型我没用过,不过我以前用过其他转换器都成功过。

    【讨论】:

    • 我们有将 DB9 引脚转换为 DB25 的转换器(也不起作用),您可以在链接的底部页面上看到一个。所以它不起作用,因为并行端口协议与 RS-232 完全不同,我们需要一个设备来翻译它?
    • 完全正确 - 您需要一个将串行“转换”为并行的设备。我链接到的设备就是这样一种设备。如果您在 Black Box 上环顾四周,他们可能有一些选择。只要确保您正在寻找合适的转换器,而不仅仅是一个用于一个引脚到另一个引脚的适配器(这是行不通的)。
    • “协议”完全不同,因为并行端口在八个引脚上发送数据 (en.wikipedia.org/wiki/Parallel_port#Pinouts),而串行端口每个方向仅使用一个引脚 (en.wikipedia.org/wiki/RS-232#Pinouts)。所以翻译器必须接收 8 个串行位,将它们缓冲起来,然后通过 8 根线发送它们(反之亦然)。您拥有的 DB25-DB9 电缆可能是用于将 25 针串口连接到 9 针串口(@98​​7654324@)。
    猜你喜欢
    • 1970-01-01
    • 2010-12-12
    • 2013-11-02
    • 2014-10-10
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多