整个串口收发信息操作过程中主要调用SerialPort对象:   在初始化串口设置后,便开启一线程用来实时的读取串口反馈信息,并且将串口反馈信息存放到一个StringBuffer中,当每读取到反馈信息时,则开启读取串口反馈信息的线程将自动释放CPU,再通过从StringBffer获取串口反馈信息;  发送指令(信息)是通过直接由:
    OutputStream out=serialPort.getOutputStream();
    out.write(comm);
实现的;但是:串口有反馈信号(反馈信号的频率很大)的同时,再去对外围串口设备发送控制指令时,就出现了不稳定的现象;
  请那位前辈能帮我解决这个问题;谢谢!!

解决方案 »

  1.   

    up 
    我也做了串口程序 不过没有深入反馈 镶到JSP不好使
      

  2.   

    双工串口对于读写是互不干扰的,我估计还是你的程序有问题。
    标准做法:开启线程1监听串口数据的反馈,有数据则存入变量后继续监听,但是不做处理,并通知工作线程,监听线程只用来监听串口,另外开启一个工作线程平时等待,接受到来自监听线程的通知后开始处理接受到的数据。这个是读串口并处理,注意处理好共享资源的同步工作,关于多线程看一下PRODUCT-CUSTOMER模式,再有第三个线程写串口,任何时候都可以,只关心写串口,读串口和处理交给前术的监听线程和工作线程。