日期:2014-05-20  浏览次数:20929 次

急呀,请教 vs2003 C# + axMSComm 开发串口问题
我第一次做串口方面的开发,关于称重系统的,其它模块都做好了
但在读串口数据时发生问题

当重量为1190时
我用其它串口调试工具显示如下:
FD   00   90   11   00   05   54

而我的程序只能显示
00   90   11   00   05   54
而且在某些重量时,会显示错误的数据如下
00   3F   00   05   29

我的程序==========================================================
axMSComm1.RThreshold=14;
string[]   ww=new   string[14];
for(int   i=0;i <14;i++)
{
  by=System.Text.Encoding.ASCII.GetBytes(axMSComm1.Input.ToString());
  ww[i]=ByteToString(by);
  textBox2.AppendText(ww[i]);
}

public     byte[]   StringToByte(string   InString)  
{
  string[]   ByteStrings;
  ByteStrings   =   InString.Split( "   ".ToCharArray());
  byte[]   ByteOut;
  ByteOut   =   new   byte[ByteStrings.Length-1];
  for   (int   i   =   0;i==ByteStrings.Length-1;i++)  
  {
    ByteOut[i]   =   Convert.ToByte(( "0x "   +   ByteStrings[i]));
  }  
  return   ByteOut;
}

是否是编码转换的问题?

------解决方案--------------------
by=System.Text.Encoding.ASCII.GetBytes(axMSComm1.Input.ToString());
是的
0xFD的ASCII不存在