C#:就是串口调试,点击radiobutton的时候,text文本框中收到的数据是ASCII形式的数据
2个回答
展开全部
1)从SerialPort接收数据
byte[] buff = new byte[1024];
byte[] data = null;
// 返回值byteRead是实际读到字节数量
int byteRead = serialPort.Read(buff, 0, buff.Length);
if(byteRead > 0)
{
data = new byte[byteRead];
Array.Copy(buff, 0, data, 0, byteRead);
}
else //没有读到数据
{
//(没有读到数据时的处理)
}
2)点击了“16进制”后的处理
StringBuilder sb = new StringBuilder();
foreach(byte b in data)
{
sb.Append(string.Format("{0:x2}", b));
sb.Append(" ");
}
string s = sb.ToString().TrimEnd();
// 显示16进制格式的数据
textBox1.Text = s;
3)点击了“字符串”后的处理
string s =
System.Text.Encoding.Default.GetString(data, 0, data.Length);
// 按字符串显示
textBox1.Text = s;
4)点击了“ACSII”后的处理
StringBuilder sb = new StringBuilder();
foreach(byte b in data)
{
sb.Append(b.ToString());
sb.Append(" ");
}
string s = sb.ToString().TrimEnd();
// 按ASCII码值显示
textBox1.Text = s;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询