C# 如何在C中使用AT命令#

C# 如何在C中使用AT命令#,c#,.net,sms,serial-port,at-command,C#,.net,Sms,Serial Port,At Command,我试图用这个代码向GSM调制解调器或带有C#的手机发送命令,但它不起作用!谁能告诉我该怎么办 SerialPort sp = new SerialPort(); sp.PortName = "COM42"; sp.Open(); sp.Write("ATD09364191752"); 您没有在ATD命令后编写换行符。(我想你必须这么做。) 您没有调用sp.Flush(),因此该命令可能被卡在缓冲区中。尝试在Write()调用之后添加此调用 您依赖波特率、握手协议等的所有默认设置。您可能需要检查

我试图用这个代码向GSM调制解调器或带有C#的手机发送命令,但它不起作用!谁能告诉我该怎么办

SerialPort sp = new SerialPort();
sp.PortName = "COM42";
sp.Open();
sp.Write("ATD09364191752");
  • 您没有在ATD命令后编写换行符。(我想你必须这么做。)
  • 您没有调用sp.Flush(),因此该命令可能被卡在缓冲区中。尝试在
    Write()
    调用之后添加此调用

  • 您依赖波特率、握手协议等的所有默认设置。您可能需要检查调制解调器文档中的这些设置。

    这与c#无关,您应该查找at命令的字典,以及sms必须如何编码而不是刷新。是,在换行符上,使用WriteLine()。如果一个国家的电话号码以零开头,并且没有足够的数字打国际电话,这就有点模糊了:)是的,还有握手。或可恢复的属性。