回 帖 发 新 帖 刷新版面

主题:请高手指点:为何用串口接收的数据不对?

初学C#,按网上的介绍学习串口编程如下:
无关部分:略
private void axMSComm1_OnComm(object sender, System.EventArgs e) 
{
    string strIn="" ;        //定义变量strIn,赋初值为空
    byte[] bytIn;            //定义变量bytIn
    object objIn;            //定义变量objIn 为对象型
    int i;                   //定义变量i
        axMSComm1.InputMode=MSCommLib.InputModeConstants.comInputModeBinary;
     axMSComm1.InputLen=0;
     objIn=axMSComm1.Input;  
     bytIn =(byte[])objIn;   
     for (i=0;i<=(bytIn.Length-1);i++ ) 
      { 
         strIn +=bytIn[i].ToString("X"); 
         } 
    textBox1.Text+=strIn; 
 }
要接收的数据格式是:一个起始位,而后是六个字节的数据,最后是一个结束位。这六个字节的第一个字节为固定的十六进制数AA,最后一个字节为固定的十六进制数BB,
而实际接收到的数据为中间的四个字节数据都对,起始为98 E6,末尾为9E FE。
不知差在哪了?请高人指点。
邮箱:zaiwu2000@126.com
电话:13391925045

回复列表 (共1个回复)

沙发

波特率没设对

我来回复

您尚未登录,请登录后再回复。点此登录或注册