接收数据输出http://postimg.org/image/5hvqgosc7/
这是RFID标签编号的字符串显示。它是真的这一个显示为所有rfid或我可以改变它,只显示数字没有空格和符号?
或者我的代码有问题。
这是我的代码:
private void Form1_Load(object sender, EventArgs e)
{
cn.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:UsersThesisDesktopProjectsEmployees.accdb;Persist Security Info=True";
cmd.Connection = cn;
this.myDelegate = new AddDataDelegate(AddDataMethod);
rfidbox.Enabled = true;
string[] ports = SerialPort.GetPortNames();
foreach (string port in ports)
{
SerialPort mySerialPort = new SerialPort(port);
mySerialPort.BaudRate = 9600;
mySerialPort.Parity = Parity.None;
mySerialPort.StopBits = StopBits.One;
mySerialPort.DataBits = 8;
mySerialPort.ReadTimeout = 3000;
mySerialPort.Handshake = Handshake.None;
mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
mySerialPort.Open();
}
}
private void DataReceivedHandler( object sender, SerialDataReceivedEventArgs e)
{
SerialPort sp = (SerialPort)sender;
string s = sp.ReadExisting();
rfidbox.Invoke(this.myDelegate, new Object[]{s});
}
public void AddDataMethod(String myString)
{
rfidbox.AppendText(myString);
}
提前感谢您的帮助
我假设您的数据在具有ASCII值的几个字节之后具有二进制部分。您可能需要查阅硬件的文档以了解数据的结构。如果部分是二进制的,则需要使用二进制读取例程,如SerialPort.ReadByte() n次,并手动从字节组合字符串。字符串后的字节需要根据含义进行解释;如果数据中包含二进制整数,请注意其潜在的端序问题。