我正在开发一个 WinCE 应用程序(.Net 3.5),它允许通过 TCPIP、串行端口和 USB 连接到终端。
目前仍在尝试集成 USB 功能。我做了一些研究,发现可以通过 C# 中的 SerialPort 类完成 USB 连接。
我尝试将 USB 串行电缆连接到 WinCE,然后出现一个新的 COMPort (COM5)。但是当我通过该端口发送数据时,它总是返回写入超时错误。
下面是我通过 SerialPort 连接时的代码:
private void SetSerialPort()
{
try
{
string[] a = SerialPort.GetPortNames();
string port = "COM4";
if (config.port.Length > 0)
{
port = config.port;
}
this.sp.PortName = port;
this.sp.BaudRate = 9600;
this.sp.DataBits = 8;
this.sp.Parity = Parity.None;
this.sp.StopBits = StopBits.One;
this.StartSerialPort();
}
catch (Exception ex)
{
}
finally
{
this.Refresh();
}
}
public void StartSerialPort()
{
try
{
this.sp.Open();
this.sp.Handshake = Handshake.None;
this.sp.ReceivedBytesThreshold = 1;
this.sp.DiscardInBuffer();
this.sp.DiscardOutBuffer();
this.sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (this.sp.IsOpen)
{
this.sp.RtsEnable = true;
this.sp.DtrEnable = true;
this.sp.WriteTimeout = 5000;
}
}
}
是否可以通过此设置发送数据?WinCE USB > USB 串行 (RS232) > DB9 针。
提前致谢。