【问题标题】:C# serial port, simulation of serialport writeC#串口,模拟串口写
【发布时间】:2012-01-22 12:42:46
【问题描述】:

我有一个 c# 应用程序,通过串行端口将 pc 连接到设备。

当我向设备发送数据时,如果设备发回数据,则会触发 datareceived 事件。

我想问这个。 有没有办法模拟设备的数据发送?

我的意思是,我不仅想在设备发送数据时触发 datareceived 事件。

这可能吗?

【问题讨论】:

    标签: c# serial-port emulation simulation com0com


    【解决方案1】:

    您必须有一个额外的免费serial port

    如果需要,您可以:

    • 只需添加另一个新的或
    • 安装虚拟COM口解决方案(如com0com)。

    您可以通过Null modem 使用设备的软件emulator 来利用您的C# 程序。

    【讨论】:

    • 感谢您的回复。我快速浏览了 com0com,但我不认为它是我想要的。我想要的是是否可以通过我的代码来模拟从设备接收数据。例如,我有一个应用程序,当我按下按钮时,该应用程序会模拟从串行端口发送的数据,以触发另一个应用程序中存在的 SerialPort.DataReceived。
    • 这就是模拟器的用途。它应该模拟设备。在您的用例中,通信是通过串行端口进行的,如果您没有另一个额外的串行端口,则使用 com0com 只是模拟串行端口的另一种方式。否则,你怎么能触发 serial DataReceived 事件?
    • 是的,你是对的。我心里有不同。当我更仔细地阅读它时,我找到了解决方案。谢谢
    • 很高兴为您提供帮助。由于您是 Stackoverflow 的新手,我提醒您,您可以通过单击 rigth 按钮(其图标就像一个勾号)来接受答案。花点时间访问FAQ 的所有部分。它可以帮助您取得很大的进步。
    • 我会看看常见问题解答。让我再问你一个问题。我创建了一对虚拟 COM,用于我的应用程序。当我创建它们时,我可以毫无问题地使用它们。但是当我重新启动我的电脑时,该应用程序给我一个错误,即 COM 端口不退出。为什么会这样?
    猜你喜欢
    • 1970-01-01
    • 2014-10-16
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    相关资源
    最近更新 更多