C# serialPort接收数据
各位大侠请多多指教,我是一个新人,本人在公司最近写的一个程序是用serialPort控件接收数据。具体是这样的:我写的程序是基于winCE平台的,用C#写的用来读IC卡。根据文本框里面的数字读取IC卡中相应块的数据,比如文本框中手动输入3,点击读块按钮的时候串口就会把IC卡第二块里面的数据显示到listbox里面,这是我读块按钮下面的代码,但是读出来的好像不是我想要的。请大家帮我改下,在此谢过了。
string a2=this .textBox1 .Text;
string a1 = "10 FF 52 "+a2;
byte[] aa =a2h(a1);
//aa[0] = 0x10;
//aa[1] = 0xFF;
//aa[2] = 0x52;
//aa[3] = 0x;
serialPort1.Write(aa, 0, aa.Length);
byte[] buffer = new byte[14];
int rsize;
rsize = serialPort1.BytesToRead;
serialPort1.Read(buffer, 0, rsize);
string a = null;
if (rsize>0)
{
for (int h = 0; h < buffer.Length; h++)
{
a += buffer[h].ToString("X2");
}
listBox1.Items.Add(a .Substring (8,8));
}
显示到listbox里面的数据是: B4091E00
但是我用读卡器读出来第三块里面的数据是FFFFFFFF
好像不论我文本框里面输入多少,点击读块按钮读出来的数据都是:B4091E00
--------------------编程问答-------------------- 只是帮顶 --------------------编程问答-------------------- VS2008以上好像都没有WinCE了
给你发个PC的吧
我当时也是看这个的【源代码】
http://chenlidong0815.blog.163.com/blog/static/31766830201042102434785/ --------------------编程问答-------------------- 看看是不是波特率不对。 --------------------编程问答-------------------- wince上的没做过 --------------------编程问答-------------------- 没在wince上做过,不过你还是可以参考下pc下的,原理应该一样的。 --------------------编程问答-------------------- --------------------编程问答-------------------- VS2008是有wince的啊 我最近就在做这个 而且很方便调试 因为我用的是win7 所以装的是VS2008 真心方便
补充:.NET技术 , C#