接收从GPRS返回的指令,请大家帮帮忙^_^
我想用C#编程实现与GPRS握手,向GPRS发AT指令,但总是无法显示OK,当我把程序命令提示符窗口关上后,打开串口调试助手,却能直接在接收区内看到之前GPRS对之前AT指令的返回"OK",难道我从串口读数据的部分有问题么,请大家帮帮忙,小妹在此谢过了!!using System;
using System.IO.Ports;
using System.Text;
using System.Threading;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
SerialPort gprs = new SerialPort();
gprs.Open();
string command = "AT";
//写缓冲区
byte[] writebuffer = new byte[command.Length + 1];
int i;
//把指令字符串转换成字节数组
for (i = 0; i < command.Length; i++)
{
writebuffer[i] = Convert.ToByte(command[i]);
}
writebuffer[i] = 0x0D;
gprs.Write(writebuffer, 0, writebuffer.Length);
Thread.Sleep(50);
//接收缓冲区
int len = gprs.BytesToRead;
byte[] bytes = new byte[len];
gprs.Read(bytes, 0, len);
//将ASCII码变成字符OK显示
string response = Encoding.ASCII.GetString(bytes);
Console.WriteLine(response);
Console.ReadLine();
}
}
}
--------------------编程问答-------------------- 是不是编码问题
在调试模式下一步步跟踪看看 --------------------编程问答-------------------- 好想你没有用datarecieved事件吧,必须添加那个委托,光sleep(50)可能不好用。那个才是接数据的,大家一起学习,我也是做串口通信的QQ:272253931 --------------------编程问答-------------------- 調試跟蹤一下,看接收到了沒有? --------------------编程问答-------------------- UP
补充:.NET技术 , C#