我编写了一个程序来使用GSM设备读取/发送短信。我的代码在一种设备上运行良好。今天我使用的是另一台设备而我的程序无法从中接收(虽然它可以发送到它就好了)。该设备在puTTY下使用相同的配置工作正常。
private void Form1_Load(object sender, EventArgs e)
{
Variables.sp.PortName = "COM1";
Variables.sp.BaudRate = 9600;
Variables.sp.DataBits = 8;
Variables.sp.Parity = Parity.None;
Variables.sp.StopBits = StopBits.One;
Variables.sp.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
try
{
Variables.sp.Open();
Variables.sp.WriteLine("AT\r");
//Variables.sp.WriteLine("AT+CMGF=1\r");
}
catch
{
MessageBox.Show("Can't open COM1. Quit and try again.");
}
}
private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string indata = sp.ReadExisting();
MessageBox.Show(indata);
}
知道为什么它可以在一台设备上运行而不是另一台设备吗?虽然我在puTTY下键入相同的命令,但它们的工作方式相同吗?