2012-08-01 83 views
0

在C/C++中從串口讀取而不從緩衝區中移除(linux)

如何從串口讀取數據,而不必刪除已從緩衝區中讀取的信息?

我想在Linux機器上做類似Arduino的Peek功能(http://arduino.cc/en/Serial/Peek)。

+1

也許[這個問題](http://stackoverflow.com/questions/5900216/get-the-count-of-bytes-waitting-on-a-serial-port-before-reading-linux)可以提供幫助。 – 2012-08-01 12:03:00

+1

通常,您可以使用自己的緩衝區來執行此操作,而不是由操作系統提供並在內核模式下使用的緩衝區。 – 2012-08-01 12:53:32

+0

現在,你如何從串口讀取數據?實現的緩衝區讀取機制的代碼片段可以幫助您獲得更多有用的答案。 – askmish 2012-08-01 13:18:48

回答

1

串行端口就像使用文件描述符的文件一樣被訪問,所以fgetc ungetc方法應該可以工作。

+2

謝謝!我還需要使用fdopen()以從文件描述符(一個整數)獲得指向FILE結構體的指針。 – Anjz 2012-08-06 17:19:09