2009-12-13 41 views
1

我已經插入一條RS-232電纜到我的電腦來做一個C#程序來讀取端口。如果我打開'HHD Free Serial Port Monitor'並嘗試監視串行端口,它不會顯示該端口的任何活動。如果我運行'Terminal.exe',並指向該端口,它會顯示數據流入。串口與終端端口的區別?

終端端口和串行端口是否有區別?爲什麼這個區別?我可以使用.NET SerialPort類來打開此端口嗎?

謝謝, 澤。

回答

2

我認爲Terminal.exe程序引發連接器中的RTS/CTS引腳,表示它已將端口打開到外部數據源。 (或者你的串行端口監控程序無法正常工作。)

要回答你的其他更普遍的問題:一個RS-232端口一個「串行端口」。一個「終端」是歷史上插入串行端口的,因此另一個通用名稱的確是「終端端口」。

1

是的,您可以使用.NET's SerialPort訪問COM端口(RS232)。我假設你可以通過「terminal.exe」來監視活動,而不是通過你自己的C#程序來監視活動?

將是很好的發佈您的代碼。

同時有關於這個主題大量實例代碼,如:
Communicating with Serial Port in C#

1

有RS232實際上兩者之間沒有什麼區別,如果你在閱讀維基百科的定義here,注意「RS- 232(推薦標準232)是連接DTE(數據終端設備)和DCE(數據電路終端設備)之間的串行二進制數據信號的標準'

這將解釋您對終端端口和串行端口的混淆。

串行意味着順序,即當您通過串行電纜通過串行端口發送數據時,每次傳輸一個位。該協議使用「準備發送」和「清除發送」握手協議。

時下,序列號爲 代替 在下降,但仍然使用,作爲受歡迎程度接管的USB的結果。 (感謝Adam Robinson對他的指出)。有一些串行設備,例如電磁卡讀卡器,僅舉幾例。有一個串行通信控制的理由是,在.NET Framework 1.1的解決辦法,以串行通訊爲缺憾和可怕 - 它涉及到大量的P /調用來得到它的工作。 .NET 2.0中的串口控制仍然存在一些問題,有時在接收數據時它不會觸發事件。可悲的是,它沒有被修復或我知道。

希望這會有所幫助, 最好的問候, 湯姆。

+0

不要迂腐,但「串行」沒有被USB取代(實際上,USB的全稱是「universial串行總線」,而在該總線通信的所有設備的串行FASION這樣做),RS232/COM端口具有是。 –