(本人新手,只会基本的串口读取和解析)
公司现在有一个小项目是通过华为em660和3g卡来发送短信同时打开3g网络
用测试工具提示
同时com4和com5都不能打开。可是自己写的却能打开。只是打开之后获取不到数据
下面是测试代码
serialPort2.Write(textBox6.Text);//这个是发送的文本比如AT+CGMI
System.Threading.Thread.Sleep(int.Parse(textBox5.Text));
string ss="";
for(int i=0;i<read.Length;i++)//read 是接收的字符集合 byte和char都读取不到值
{
ss = ss+read[i].ToString();
}
textBox4.Text = textBox4.Text + x++.ToString() + ":" + ss + "\r\n";
char[] read =new char[100];
private void serialPort2_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
serialPort2.Read(read, 0, 100);
}
可以直接用SerialPort的ReadLine方法读取串口数据,具体使用方法MSDN里有示例代码。
还是没结果
@深圳_猫仔: 有设备的说明书吗?看看串口设置是不是正确的,正常来说可以打开的话应该是可以收到数据的
@狼Robot: 有华为em660的英文文档,可是太多了 看不懂。网上也没中文文档下载
http://files.cnblogs.com/ldx1989bf2006/HUAWEI-EM660.pdf
这个是我刚上传上去的英文文档。还不知道是否对代码有用。
首先要确保你的串口是完好的,如果是台式机的话你可以换个串口卡试试,串口绝对不要热插拔。
如果你使用线 连接本机两个串口,测试可以收发数据,但是这个结果不能保证你的串口是好的,项目上已经检测过了。
如果新的串口卡,使用上之后还是没数据,那你重启电脑再试一下。
都试过之后,还是不行,再确认波特率 以及你的串口线是否正确。串口线是交叉的,直通的那种是没法使用的。
usb 转串口的 你也可以试试。
以上的就是项目上的一些经验了,试试吧。
虽然我是新手,可是以上我都试过了。谢谢你的好心回答
@深圳_猫仔: 解决后期待分享。
@_刘宏伟_: 虚拟串口操作,有些测试工具是不行的。