我没有分送,但是我现在确实遇到了很难的问题,我已经尽力了,请帮助我! 对你的设备不是很明白,但你这里我注意到有两个地方。if (sp.IsOpen == false){sp.Open();}为什么会用到两次?还有就是你在发送接收完数据有没有对数据清空? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用if(sp.isopen==false)是因为,我搞不清楚端口是否打开,没打开,就打开,以免报错;楼上的所指的数据精空,是指: sp.DiscardInBuffer();sp.DiscardOutBuffer();这两个方法吗?或者是其它什么方法;好像没用,我试过! 我现在把程序改成:byte[] wData =new byte[sp.readbuffersize];System.IO.Ports.SerialDataReceivedEventArgs e) { sp.Read(wData, 0, sp.readbuffersize); sysStatus = "receOk"; } }}这样读,有什么问题吗?我觉得这样读,应该就干净了,上边的读数据有什么问题吗?private void sp_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) { sp.Read(wData, 0, sp.ReadBufferSize); sp.DiscardInBuffer(); sp.Read(wData2, 0, sp.ReadBufferSize); sp.Read(wData3, 0, sp.ReadBufferSize); string tt = ":"; string bb = ":"; string cc = ":"; foreach (byte aa in wData) { tt += aa.ToString(); } foreach (byte aa in wData2) { bb += aa.ToString(); } foreach (byte aa in wData3) { cc += aa.ToString(); } tb1.Text += tt; label2.Text += bb; label3.Text += cc; sysStatus = "receOk"; }我连续读三次都有数据,真是怪死了,我搞不明白了,太郁闷啦! 求助 一个泛型应用示例:将一组已经排序的条形码按照"相邻编号连续"分组 基于.net的windows服务中 如何让任务并行执行(基于.net 4.0 Task) winform 怎么更新控件啊? 在事件里,((Form1)sender)和Form1有什么区别? 如何自动缩放窗体内的其他组件? 右键菜单,如何通过左键调用? 在vb.net的IDE代码窗口顶端的下拉框中列出了所有事件,可以自由选择,方便。C#中应怎么做? timer控件能不能等执行完了再循环? 2000能装XP吗? 求助.关于异步Socket回调函数问题 请问一下如何表示DATAGRID 中被选中的单元格?
byte[] wData =new byte[sp.readbuffersize];
System.IO.Ports.SerialDataReceivedEventArgs e)
{
sp.Read(wData, 0, sp.readbuffersize);
sysStatus = "receOk";
}
}
}这样读,有什么问题吗?我觉得这样读,应该就干净了,上边的读数据有什么问题吗?private void sp_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
sp.Read(wData, 0, sp.ReadBufferSize);
sp.DiscardInBuffer();
sp.Read(wData2, 0, sp.ReadBufferSize);
sp.Read(wData3, 0, sp.ReadBufferSize);
string tt = ":";
string bb = ":";
string cc = ":";
foreach (byte aa in wData)
{
tt += aa.ToString();
}
foreach (byte aa in wData2)
{
bb += aa.ToString();
}
foreach (byte aa in wData3)
{
cc += aa.ToString();
}
tb1.Text += tt;
label2.Text += bb;
label3.Text += cc;
sysStatus = "receOk";
}
我连续读三次都有数据,真是怪死了,我搞不明白了,太郁闷啦!