我有一臺設備可以通過我電腦上的COM端口發送數據。是否可以使用C#編程來模擬com端口發送和接收數據?
我知道如何來模擬它,但是控制器必須插入模擬,而無需插上任何外部設備發送數據(使用變形桿菌)
是否可以模擬COM端口發送的數據?
例如:我想寫一個C#程序,它打開COM端口並等待數據,另一個C#程序將數據寫入同一端口。
我有一臺設備可以通過我電腦上的COM端口發送數據。是否可以使用C#編程來模擬com端口發送和接收數據?
我知道如何來模擬它,但是控制器必須插入模擬,而無需插上任何外部設備發送數據(使用變形桿菌)
是否可以模擬COM端口發送的數據?
例如:我想寫一個C#程序,它打開COM端口並等待數據,另一個C#程序將數據寫入同一端口。
這樣做的最好方法是使用軟件COM端口仿真器。我用com0com:
這提供虛擬NM COM端口對在系統上(即:什麼是輸出到一個是輸入到另一個,反之亦然)。這些設備就像真正的COM端口一樣出現在設備管理器中,因此您可以像使用真正的硬件設備一樣在C#中與它們交互。
爲了簡單起見,給自己一個COM端口或null調制解調器仿真器。你會走得很遠,也可能浪費很多時間,試圖自己做這件事。
看到這個帖子,太: Faking an RS232 Serial Port
你爲什麼不只是邏輯上模擬設備本身在你的代碼?你只需要一個SimRead和SimWrite方法。 –
@HansPassant通常使用硬件設備來編寫事件驅動的代碼--SimWrite可以正常工作,但通常你會對DataReceived事件做出反應而不是主動讀取。這並不是說你不能實現邏輯上等價的東西,但是我發現,null-modem仿真提供了最乾淨的解決方案。通過這種方式,您可以編寫一個完全獨立的測試應用程序來模擬連接的設備行爲,並且不需要對控制應用程序進行任何修改即可進行測試。 –