javax.comm这个包。  我用了事件监听机制来接受串口的数据。  可是我发送一个命令过去,返回的数据,要分好几次响应呢?
   
   详细:我发送一个命令,应该返回26位。
   
    可是分四次监听返回。第一到三次各返回8个
    最后一次返回2个
    
   
   
    怎么弄,让它一次监听全部返回啊!    我查了接受缓存区。默认的是4096  。方法是serialPort.getInputBufferSize();   请高手指点,在线等待|!

解决方案 »

  1.   

    public void analyseReceiveMsg() {
         InputStream is = sm.getInputStreamFromPort(port);
          byte[] data = null;
           //下面就应该是analyse了
    }public InputStream getInputStreamFromPort(String portName) {
            SerialPort sPort = sPortMap.get(portName);
            InputStream is = null;
            try {
                is = sPort.getInputStream();
            } catch (IOException e1) {
            }
            return is;
        }回在另一个里面了
      

  2.   

    接收到 SerialPortEvent.DATA_AVAILABLE 事件后 程序等待一会再读数据