我使用传真调制解调器获取字符串中的电话号码。我试图在串口发送命令。我在下面使用以下代码:
private static string PhoneNumber;
private SerialPort mySerialPort;
private void Form1_Load(object sender, EventArgs e)
{
mySerialPort = new SerialPort("COM3");
mySerialPort.BaudRate = 115200;
mySerialPort.Parity = Parity.None;
mySerialPort.StopBits = StopBits.One;
mySerialPort.DataBits = 8;
mySerialPort.Handshake = Handshake.None;
mySerialPort.Open();
mySerialPort.WriteLine("at#cid=1");//It doesnt recognise this line
mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
}
private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string indata = sp.ReadExisting();
messageBox.Show(indata);
}
我没有接受任何错误,但问题是我输入它的命令不起作用。通常,如果它能够工作,它会给我一个电话号码,现在它没有任何显示。
如果我将在超级终端中键入此命令,它可以正常工作!所以我想我的代码有问题。
答案 0 :(得分:2)
我在命令之后使用\ r \ n它完美无缺。谢谢你的建议!
这是我的代码:
mySerialPort.WriteLine("at#cid=1\r");
答案 1 :(得分:0)
您可能希望在打开端口并发送任何命令之前连接public static
事件。