首页 > Python基础教程 >
-
C#教程之霍尼韦尔1450g二维码扫码枪中文识别。
USB接口模拟COM串口驱动程序
HSM USB Serial Driver
链接: https://pan.baidu.com/s/1aOV-Fz0OYdQGc5dMmkHzgg 提取码: fwgt
霍尼韦尔EZConfig
用来设置扫码枪的程序,需要把扫码枪设置到串口模式。也可以不用这个软件,直接扫码设置。
链接: https://pan.baidu.com/s/1aW4hB-gH6uHUsKaQvJSwkA 提取码: he46
public partial class Form1 : Form
{
//委托监视端口这个不用多说了吧。
public Form1()
{
Disp_Delegate = new Displaydelegate(DispUI);
SerialPort1.DataReceived += new SerialDataReceivedEventHandler(Com_Received);
InitializeComponent();
SerialPort1.Open();
}
SerialPort SerialPort1 = new SerialPort("COM3", 9600, Parity.None, 8, StopBits.One);//注意接口名称,不知道为什么,我这个默认接上后是COM3
public delegate void Displaydelegate(byte[] InputBuf);
public Displaydelegate Disp_Delegate;
void Com_Received(object sender, SerialDataReceivedEventArgs e)
{
int len = SerialPort1.BytesToRead;
Byte[] InputBuf = new Byte[len];
try
{
SerialPort1.Read(InputBuf, 0, len); //读取缓冲区的数据直到“}”即0x7D为结束符
System.Threading.Thread.Sleep(50);
this.Invoke(Disp_Delegate, InputBuf);
}
catch (TimeoutException ex) //超时处理
{
MessageBox.Show(ex.ToString());
}
}
public void DispUI(byte[] InputBuf)
{
richTextBox1.Text =Encoding.UTF8.GetString(InputBuf,0,InputBuf.Length);//要根据实际情况来,我的码是用ZXING生成的,用的UTF8。TEXTBOX也有问题,我直接加了richTextBox1倒是没问题。
}
}