SerialPort port;
port = new SerialPort();
port.PortName = "COM3";
port.BaudRate = 115200;
port.StopBits = System.IO.Ports.StopBits.One;
port.DataBits = 8;
port.DtrEnable = true;
port.RtsEnable = true;
port.Parity = System.IO.Ports.Parity.None;
port.Handshake = System.IO.Ports.Handshake.RequestToSendXOnXOff;
if (port.IsOpen == false)
{
textBox1.Text += "open";
port.Open();
//到这里是正常的
}
//---------------这是发生异常 抛出System.IO.Ports.SerialStream.WinIOError()
byte[] callCommand = Encoding.UTF8.GetBytes("at");
port.WriteTimeout = 10000;//10S
port.Write("at");
//--------------
textBox1.Text += "write";
Thread.Sleep(500);
string outputstring = port.ReadLine();
textBox1.Text = outputstring;
port.Close();
port.Dispose();
环境: windows mobile 6.0 Smartphone
//---------------这是发生异常 抛出System.IO.Ports.SerialStream.WinIOError()
byte[] callCommand = Encoding.UTF8.GetBytes("at");
port.WriteTimeout = 10000;//10S
port.Write("at");
//--------------
补充
port.Open(); 之后 以下三个都只有读属性, 都为false
// 获取端口的载波检测行的状态。
textBox1.Text += " CDHolding:" + port.CDHolding.ToString(); ;
//获取“可以发送”行的状态。
textBox1.Text += " CtsHoldingToString:" + port.CtsHolding.ToString();
//获取数据设置就绪 (DSR) 信号的状态。
textBox1.Text += " DsrHolding:" + port.DsrHolding.ToString();