C#获取Honeywell voyager 1400g扫码后的数据
2015-12-18 17:09
501 查看
一、在类方法中加入
System.IO.Ports.SerialPort com;
二、在构造方法中加入
try
{
com = new System.IO.Ports.SerialPort("COM3",19600);
com.Open();
com.DataReceived += Com_DataReceived;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
三、加入接收扫码后的数据的方法
private void Com_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
StringBuilder sb = new StringBuilder();
do
{
int count = com.BytesToRead;
if (count == 0)
return;
receiveBytes = new byte[count];
com.Read(receiveBytes, 0, count);
for (int i = 0; i < receiveBytes.Length; i++)
{
char c = Convert.ToChar(receiveBytes[i]);
sb.Append(c);
}
} while (com.BytesToRead > 0);
string str=sb.ToString();
}
四、在窗体关闭方法中加入
if (com.IsOpen)
{
com.Close();
com.Dispose();
}
System.IO.Ports.SerialPort com;
二、在构造方法中加入
try
{
com = new System.IO.Ports.SerialPort("COM3",19600);
com.Open();
com.DataReceived += Com_DataReceived;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
三、加入接收扫码后的数据的方法
private void Com_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
StringBuilder sb = new StringBuilder();
do
{
int count = com.BytesToRead;
if (count == 0)
return;
receiveBytes = new byte[count];
com.Read(receiveBytes, 0, count);
for (int i = 0; i < receiveBytes.Length; i++)
{
char c = Convert.ToChar(receiveBytes[i]);
sb.Append(c);
}
} while (com.BytesToRead > 0);
string str=sb.ToString();
}
四、在窗体关闭方法中加入
if (com.IsOpen)
{
com.Close();
com.Dispose();
}
相关文章推荐
- C#当中的多线程_任务并行库(中)
- C#聊天,C#简易聊天室
- c#中的多线程异常
- C#之值类型与引用类型
- C# 中自定义Attribute值的获取与优化
- C#验证字符串是否是数字,是否包括中文,是否是邮箱格式,是否是电话格式
- C#文件上传头文件
- NET 2.0(C#)调用ffmpeg处理视频的方法(转载)
- C#遍历文件夹下所有文件
- 分分钟用上C#中的委托和事件
- C#多线程那点事——信号量(Semaphore)
- C# 实现繁体字和简体字之间的转换
- 谈C#中的Delegate
- 使用C#的Delegate机制实现资源的异步读取的类
- 用vs打开更高版本的工程(如VS2010打开VS2012的工程)
- C#系统注销功能
- C#的可空类型、decimal相关
- C# Interface 接口
- C#WinForm程序引用的Dll文件都会根目录下我想放在一个专门的DLL文件夹下
- NET C# Tostring() format 格式化字符串大全