AT命令的使用C#.NET拨打电话 [英] Dial call using C#.net by AT Commands

查看:1356
本文介绍了AT命令的使用C#.NET拨打电话的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想要通过USB电缆连接到我的手机打只需要打一个电话一个C#程序。我发现如何通过的SerialPort以及如何连接通过AT命令拨打电话,但是当我运行我的程序,然后点击拨打电话,没有任何反应。这是我的代码,请帮我:

 的SerialPort SP =新的SerialPort(COM3); 
SP.BaudRate = 9600;
SP.Parity = Parity.None;
SP.DataBits = 8;
SP.StopBits = StopBits.One;
SP.RtsEnable = TRUE;
SP.DtrEnable = TRUE;
SP.Encoding = System.Text.Encoding.Unicode;
SP.ReceivedBytesThreshold = 1;
SP.NewLine = Environment.NewLine;
SP.Open();
SP.Write(ATDT 0999182542+ Environment.NewLine);

SP.Close();


解决方案

首先,看看你的调制解调器连接,发送 AT 命令的端口。如果你收到了确定作为回应,那么就意味着你的调制解调器连接。



要拨打电话的语法是:



ATDYourphnumber; // DONOT忘记在



例如: ATD9012345645;



所以,你应该写端口以同样的方式。



语法:



SP.WriteLine(ATD+ PHONENUMBER +);



您可以使用的的WriteLine 的,因为供应的 \r\\\
太。



更新:如何看到来自调制解调器的响应:



SP.Open()的;

  CMD字符串=AT; 
SP.WriteLine(CMD +\r);
SP.Write(CMD +\r);
的Thread.Sleep(500);
串SS = SP.ReadExisting();
如果(ss.EndsWith(\r\\\
OK\r\\\
))
{
MessageBox.Show(调制解调器连接);
}


I want to make a c# program that connects to my mobile phone by usb cable to make just a call. I found how to connect by SerialPort and how to make call by AT Commands, but when I run my program and click to make the call, nothing happens. This is my code, please Help me:

SerialPort SP = new SerialPort("COM3");
SP.BaudRate = 9600;
SP.Parity = Parity.None;
SP.DataBits = 8;
SP.StopBits = StopBits.One;
SP.RtsEnable = true;
SP.DtrEnable = true;
SP.Encoding = System.Text.Encoding.Unicode;
SP.ReceivedBytesThreshold = 1;
SP.NewLine = Environment.NewLine;
SP.Open();
SP.Write("ATDT 0999182542"+ Environment.NewLine);

SP.Close();

解决方案

First of all to see if your modem is connected, send an AT command to the port. If you get a OK as response, then it means your modem is connected.

To make a call the syntax is:

ATDYourphnumber; //Donot forget the ";"

Example: ATD9012345645;

So you should write to the port the same way.

Syntax:

SP.WriteLine("ATD"+phonenumber+";");

You can use WriteLine since that serves the \r\n too.

Update: How to see the response from modem:

After SP.Open( ) ;

string cmd = "AT";
SP.WriteLine(cmd + "\r");
SP.Write(cmd + "\r");
Thread.Sleep(500);
string ss= SP.ReadExisting();
if(ss.EndsWith("\r\nOK\r\n"))
  {
   MessageBox.Show("Modem is connected");
  }

这篇关于AT命令的使用C#.NET拨打电话的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆