Je peux penser à trois options :
Mettre en œuvre la RFC 2217
RFC 2217 couvre un port de communication à la norme TCP/IP qui permet à un client sur un système d'émuler un port série aux programmes locaux, tout en envoyant et recevant de manière transparente des données et des signaux de contrôle à un serveur sur un autre système qui possède réellement le port série. Voici un aperçu de haut niveau .
Ce que vous devez faire, c'est trouver ou implémenter un pilote de port com client qui implémenterait le côté client du système sur votre PC - en ayant l'air d'être un vrai port série, mais en réalité en transférant tout vers un serveur. Vous pourriez obtenir ce pilote gratuitement auprès de Digi, Lantronix, etc. en support de leurs serveurs de port série autonomes.
Vous implémenteriez alors le côté serveur de la connexion localement dans un autre programme - permettant au client de se connecter et émettant les données et les commandes de contrôle selon les besoins.
Ce n'est probablement pas trivial, mais la RFC existe, et vous pourriez trouver un projet open source qui implémente un ou les deux côtés de la connexion.
Modifier le pilote du port série linux
Alternativement, la source du pilote de port série pour Linux est facilement disponible. Prenez-le, enlevez les pièces de contrôle du matériel, et faites en sorte que ce pilote gère deux ports /dev/ttySx, comme une simple boucle. Puis connectez votre programme réel au ttyS2 et votre simulateur à l'autre ttySx.
Utiliser deux câbles USB<-->Série dans un loopback
Mais la chose la plus facile à faire en ce moment ? Dépensez 40 $ pour deux périphériques USB à port série, connectez-les ensemble (null modem) et disposez de deux véritables ports série - un pour le programme que vous testez, un pour votre simulateur.
-Adam