我用的是C#2005, 下面这些代码相信大家都能看懂,看不懂的联系我:15929911527
private void timer1_Tick(object sender, EventArgs e)
{
int s;
Bcount2 = serialPort1.BytesToRead;//获取缓冲区中的字节数
if (Bcount2 == 1)//如果Bcount2==1说明数据接收完毕,控件停止运行
{
timer1.Enabled = false;
}
byte[] a = new byte[1];//定义一个字符数组
serialPort1.Read(a, 0, 1);//把数据放到数级里面
s = a[0];
jieshou = Convert.ToString(Convert.ToInt32(Convert.ToString(s)), 16);//把接收的数据转化成十六进制数
qjieshou = qjieshou + Convert.ToString(Convert.ToInt32(Convert.ToString(s)), 16);
//qjieshou = qjieshou +Convert.ToString(s);
textBox3.Text = textBox3.Text + Convert.ToString(Convert.ToInt32(Convert.ToString(s)), 16);
i = i + 1;
}
private void timer2_Tick(object sender, EventArgs e)
{
Bcount1 = serialPort1.BytesToRead;//获取缓冲区中的字节数
if (Bcount1 != 0)//如果Bcount1不等于零,说明有数据传过来
{
timer1.Enabled = true;//运行Timer1控件
}
}