C#怎么连接串口接收数据编程
控件:一个按钮控制接收数据,一个textbox接收数据显示内容,一个serialPort控制串口我这边是一个存有数据的盘点机,串口:com1(盘点机上设定:上传通过Cra...
控件:一个按钮控制接收数据,一个textbox接收数据显示内容,一个serialPort控制串口我这边是一个存有数据的盘点机 ,串口:com1 (盘点机上设定:上传通过Cradle-IR)波特率:115200要怎么写代码(越具体越好),那位大哥帮助一下
展开
3个回答
展开全部
我以前的回答中就有类似的例子
用C#自带的串口控件(serialPort)的DataReceived方法,一个串口收发数据就用一个控件,分别对应着一个方法。如:
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
Thread.Sleep(25);//这行是设定读取间隔,可以根据需要不使用
//这里写程序
try
{
if (!serialPort.IsOpen)
return;
int datalength = serialPort.BytesToRead;
int i = 0;
StringBuilder sb = new StringBuilder();
while (i < datalength)
{
byte[] ds = new byte[1024];
int len = serialPort.Read(ds, 0, 1024);
sb.Append(Encoding.ASCII.GetString(ds, 0, len));
i += len;
}
//这里sb就是串口获取的数据
}
catch { }
}
串口控件,在C#2005,.net 2.0以上才有
用C#自带的串口控件(serialPort)的DataReceived方法,一个串口收发数据就用一个控件,分别对应着一个方法。如:
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
Thread.Sleep(25);//这行是设定读取间隔,可以根据需要不使用
//这里写程序
try
{
if (!serialPort.IsOpen)
return;
int datalength = serialPort.BytesToRead;
int i = 0;
StringBuilder sb = new StringBuilder();
while (i < datalength)
{
byte[] ds = new byte[1024];
int len = serialPort.Read(ds, 0, 1024);
sb.Append(Encoding.ASCII.GetString(ds, 0, len));
i += len;
}
//这里sb就是串口获取的数据
}
catch { }
}
串口控件,在C#2005,.net 2.0以上才有
展开全部
1. 文档和视图通过 文档模板关联在一起。具体见 App 类的 Instance 方法。
2. 串口接收的数据可以存储在文档类中,而不是串口数据作文档。如果非想串口作文档,就自己写个串口类,实现串口读写操作。然后将文档类 从 CDocument 和你自己定义的 串口类派生。感觉没这个必要。
2. 串口接收的数据可以存储在文档类中,而不是串口数据作文档。如果非想串口作文档,就自己写个串口类,实现串口读写操作。然后将文档类 从 CDocument 和你自己定义的 串口类派生。感觉没这个必要。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-02-04
展开全部
百度文库里有类似的 文档
去搜搜 看看
去搜搜 看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询