J'ai un périphérique de port série que je voudrais tester en utilisant la ligne de commande linux.
Je peux utiliser stty et echo pour envoyer des commandes au port série, mais lorsque l'appareil répond, je n'ai aucun moyen de lire ce qui vient du port série. j'utilise
stty -F /dev/ttyS0 speed 9600 cs8 -cstopb -parenb && echo -n ^R^B > /dev/ttyS0
pour envoyer une commande à l'appareil. L'appareil fonctionne et renvoie une réponse en 300 ms. Comment imprimer cette réponse sur la console à l'aide de la ligne de commande?
Identique à la sortie. Exemple:
cat /dev/ttyS0
Ou:
cat < /dev/ttyS0
Le premier exemple est une application qui ouvre le port série et transmet ce qu'elle lit à son stdout
(votre console). Le second est le Shell qui dirige le trafic du port série vers n'importe quelle application que vous aimez; cette application particulière relaie alors simplement son stdin
à son stdout
.
Pour obtenir une meilleure visibilité sur le trafic, vous pouvez préférer un vidage hexadécimal:
od -x < /dev/ttyS0