簡體   English   中英

.NET SerialPort在115200 bps時是否可靠?

[英]Is .NET SerialPort reliable at 115200 bps?

我需要通過RS232以115200 bps連接設備。 距離很短(不到一米)。 沒有硬件或軟件握手。 交換的消息也很短:10-50個字節。 消息交換的頻率-每秒最多10次。

我曾經使用相應的Win API在C / C ++中可靠地處理這種環境中的通訊。 但是,這次我想在.NET / C#中執行此操作。

前段時間,我遇到了一篇有關.NET串行端口的文章。 我記得,作者不建議使用SerialPort類。 相反,他從托管代碼中選擇了非托管Win API。 我不確定本文是否提到.NET 1.1。

有人知道用SerialPort進行管理是否安全嗎?

SerialPort正常工作。 可以說它可以實現得更好,但是對於現代PC而言,每秒115條消息(每條50字節)的10條消息是微不足道的工作量(為便於比較,請記住PC能夠通過10G以太網鏈路接收數據)。 在引擎蓋下,OS /驅動程序將緩沖數據,因此無論您是從C ++還是C#讀取該緩沖區,都不會有太大的不同(如果有的話)。

SerialPort在USB串行端口上不能很好地工作...。但這是因為眾所周知,USB不可靠。 插入PCI串行卡或通過以太網連接到終端服務器,然后SerialPort可以正常工作。 使用C ++程序中的USB到RS232轉換器,然后返回錯誤。 得出自己的結論...

我們運行的系統具有18個以各種速度運行的串行端口(分別以115k和10hz的速度運行,數百個字節的數據包),而SerialPort從來沒有任何問題(僅適用於USB-to-RS232轉換器!)

嘗試一下...原型應該花很長時間...

值得注意的是,這里的重點不是代碼或計算機是否可以以115kbps的速度工作,而是電纜,串行硬件,外部設備和環境是否可以以這些速度工作。

如果您在電氣安靜的地方使用短時間的屏蔽電纜,那可能很好。 如果在高功率工業機器附近工作,這些機器會產生大量電子噪聲並且電纜質量不佳,那么您肯定會不滿意。 在高速RS-232通訊的電氣嘈雜的工業環境中,我肯定遇到了問題。 在這些情況下,必須使用高質量的電纜並降低傳輸速率,直到通信變得穩定且沒有錯誤。 如果這是一個問題,除了自己進行測試然后看看,別無選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM