usb轉(zhuǎn)串口驅(qū)動安裝 如何清除串口緩沖區(qū)中的數(shù)據(jù)?
如何清除串口緩沖區(qū)中的數(shù)據(jù)?tcflush函數(shù)清除串口輸入緩存(終端驅(qū)動已接到,但用戶尚未讀?。┗虼谳敵鼍彺妫ㄓ脩粢呀?jīng)寫如緩存,但尚未發(fā)送)。函數(shù)原型:int tcflush(int filedes
如何清除串口緩沖區(qū)中的數(shù)據(jù)?
tcflush函數(shù)清除串口輸入緩存(終端驅(qū)動已接到,但用戶尚未讀取)或串口輸出緩存(用戶已經(jīng)寫如緩存,但尚未發(fā)送)。函數(shù)原型:int tcflush(int filedes,int quene)參數(shù)解釋filedes: 描述符。quene取值及含義: *TCIFLUSH 清除輸入隊列 *TCOFLUSH 清除輸出隊列 *TCIOFLUSH 清除輸入、輸出隊列舉例:tcflush(fd,TCIOFLUSH)另加的說明:在打開串口后,用戶其實其實已經(jīng)可以開始從串口讀取數(shù)據(jù)了,但如果用戶沒有讀取,數(shù)據(jù)將被將保存在緩沖區(qū)里。如果用戶不想要開始的一段數(shù)據(jù),或者發(fā)現(xiàn)緩沖區(qū)數(shù)據(jù)有誤,可以使用這個函數(shù)將緩沖區(qū)清空。應(yīng)用舉例:tcflush(fd, TCIOFLUSH)sleep(2) read_len = read(fd, buff, 10)