【发布时间】:2010-12-05 18:39:05
【问题描述】:
我在 .NET 中编写了一个程序,它侦听特定的串行端口并处理正在接收的数据。我使用 com0com(Null-modem 模拟器)编写了一个测试程序,我的程序运行良好。我什至用 HyperTerminal 对其进行了测试,它似乎也可以正常工作。
但是,当我将软件与原始设备(从控制系统接收的输出)连接时,接收到的数据是乱码。它包含特殊字符。与超级终端连接时,同一设备会产生所需的输出。我更改了波特率、奇偶校验等,但收到的数据是同一组垃圾字符。
我使用了 SerialPort 组件的 DataReceived 事件,并使用以下代码行来捕获数据:
字符串数据 = portRecieve.ReadExisting();
有人能告诉我我错过了什么吗?在当前环境中,设备的输出直接与点阵打印机连接,该打印机打印端口上接收到的任何内容。打印机似乎可以捕捉到正在发送的内容,但我的代码无法捕捉到。
如果您遇到过类似的情况,请分享您的发现。
谢谢
【问题讨论】:
标签: c# .net serial-port hardware-interface