我在c#中学习AT命令。
public static void Main(string[] args)
{
String command = "AT";
SerialPort serialPort = new SerialPort
{
PortName = "COM4",
BaudRate = 9600,
DataBits = 8,
Parity = Parity.None,
ReadTimeout = 300,
WriteTimeout = 300,
StopBits = StopBits.One,
Handshake = Handshake.None
};
serialPort.Open();
serialPort.WriteLine(command + "\r");
String outPut = serialPort.ReadExisting();
Console.WriteLine(outPut);
}
我确定 PortName 。我在程序中做错了什么?
提前致谢:)
答案 0 :(得分:0)
很难判断这是否是您唯一的问题,但SerialPort.ReadExisting()
只能读取立即可用的数据(即在流和缓冲区中)。
您的程序将数据写入调制解调器,并立即调用ReadExisting()
。 <{1}}将立即返回,没有可用的数据,因为调制解调器没有时间做出响应。