Domanda

Sto sviluppando un progetto che ha una serie di sensori hardware che si collegano alla macchina di distribuzione tramite porte seriali RS232.

Ma ... Sto sviluppando su una macchina senza porte seriali RS232 fisiche, ma vorrei creare false porte seriali a cui potrei collegarmi e produrre dati con l'obiettivo di falsificare l'input dai sensori hardware.

Qualcuno sa come creare una porta seriale falsa e controllarla su Windows XP?

È stato utile?

Soluzione

Se stai sviluppando per Windows, il progetto com0com potrebbe essere quello che stai cercando.

Fornisce coppie di porte COM virtuali collegate tramite una connessione nullmodem. È quindi possibile utilizzare l'applicazione terminale preferita o qualsiasi altra cosa ti piace per inviare dati a una porta COM e ricevere dall'altra.

EDIT:

Come Thomas ha sottolineato che il progetto non ha un driver firmato, il che è particolarmente problematico su alcune versioni di Windows (ad esempio Windows 7 x64).

Esistono un paio di versioni non ufficiali com0com che contengono un driver firmato. È possibile scaricare una versione recente (3.0.0.0) ad es. da qui .

Altri suggerimenti

So che si tratta di un vecchio post, ma nel caso in cui qualcuno si ponga su questa domanda, un'opzione buona è Emulatore porta seriale virtuale (VSPE) da Eterlogic Fornisce un'API per la creazione di dispositivi di comportamento virtuale in modalità kernel, ovvero connettori, mapper, splitter ecc.
     Tuttavia , alcune delle funzionalità pubblicizzate erano davvero non capacità su tutti .

Modifica
Una scelta molto migliore , Eltima . Questo prodotto è completamente cotto. Buon supporto tecnico per sviluppatori. Il prodotto ha fatto tutto ciò che ha affermato di fare. Le opzioni del prodotto includono sia applicazioni desktop che kit di sviluppo software con API.

Nessuno di questi prodotti è open source o gratuito. Tuttavia, come hanno sottolineato altri post qui, ci sono altre opzioni. Ecco un elenco di varie utility seriali:

com0com (corrente)
com0com - Con driver firmato (versione precedente)
e, ancora, un altro posto per com0com con Driver firmato (Blog di Pete)
Software tattico
Termite
Emulatore seriale porta COM
Kermit (obsoleto, ma ancora scaricabile)
HWVSP3
Software HHD (edizione gratuita)

Uso com0com - With Signed Driver , su Windows 7 x64 per emulare COM3 E COM4 in coppia.

Quindi utilizzo Emulatore di dataport COM per ricevere da COM4.

Quindi apro COM3 con l'app im developping (c #) e invio dati a COM3.

I dati inviati tramite COM3 sono ricevuti da COM4 e mostrati da 'COM Dataport Emulator' che può anche inviare una risposta (non automatizzata).

Quindi con questi 2 grandi programmi sono riuscito a emulare la comunicazione seriale RS-232.

Spero che sia d'aiuto.

Entrambi i programmi sono gratuiti !!!!!

Un'altra alternativa, anche se l'OP non lo ha richiesto:

Esistono adattatori da USB a seriale. A seconda del tipo di adattatore, potrebbe essere necessario anche un cavo nullmodem.

Sono estremamente facili da usare sotto Linux, funzionano anche con Windows, se hai installato driver funzionanti.

In questo modo puoi lavorare direttamente con i sensori e non devi provare a emulare i dati. In questo modo potresti persino salvare dalla costruzione di un sistema anemico. (A causa dei tuoi input di dati emulati che non coprono tutti i casi, ti porta a un sistema fragile.)

Spesso è meglio lavorare con le cose reali.

C'è sempre il percorso hardware. Acquista due convertitori da USB a seriale e collegali tramite un modem NULL.

Suggerimenti per i professionisti: 1) Windows può assegnare nuove porte COM agli adattatori dopo ogni sospensione o riavvio del dispositivo. 2) I leader di mercato nei chip per USB a seriale sono Prolific e FTDI. Entrambe le società stanno combattendo i knockoff e potrebbero essere bloccate nei futuri driver ufficiali di Windows. I driver Linux tuttavia funzionano bene con i cloni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top