Posix_QextserialPort 清空串口緩存

網上找的串口通信類。開發過程中調用flush函數不起作用,緩衝區還是不能被清空,導致接收很多以前的數據。

修改如下:

  1. void Posix_QextserialPort::flush()  
  2. {  
  3.     LOCK_MUTEX();  
  4.     if(isOpen())  
  5.     {  
  6.         //Posix_File->flush(); //修改前   
  7.          tcflush(Posix_File->handle(), TCIFLUSH);//修改後   
  8.     }  
  9.      UNLOCK_MUTEX();  
  10. }  
void Posix_QextserialPort::flush()
{
    LOCK_MUTEX();
    if(isOpen())
    {
        //Posix_File->flush(); //修改前
         tcflush(Posix_File->handle(), TCIFLUSH);//修改後
    }
     UNLOCK_MUTEX();
}
  1. 也不知道這樣改對不對,反正可以清空緩衝區了。呵呵。  
也不知道這樣改對不對,反正可以清空緩衝區了。呵呵。
 
發佈了19 篇原創文章 · 獲贊 22 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章