J'utilise régulièrement cat
pour afficher les informations de débogage dans la console à partir de ma carte de développement FPGA via la connexion série, mais je n'ai jamais eu à dire à linux quel est le débit en bauds. Comment le chat sait-il quel est le débit en bauds de la connexion série?
linux
devices
serial-port
Stanri
la source
la source
minicom
avant? Ça ne marche pas ici. Ce n'est qu'après avoir configuré les paramètres du port série que je peux utilisercat
.Réponses:
L'
stty
utilitaire définit ou signale les caractéristiques d'E / S du terminal pour le périphérique qui est son entrée standard. Ces caractéristiques sont utilisées lors de l'établissement d'une connexion sur ce support particulier.cat
ne connaît pas le débit en tant que tel, il imprime plutôt sur l'écran les informations reçues de la connexion particulière.À titre d'exemple,
stty -F /dev/ttyACM0
donne le débit en bauds actuel du périphérique ttyACM0.la source
stty
)cat
utilise simplement les paramètres pour lesquels le port est déjà configuré. Avec ce petit extrait C, vous pouvez voir le débit en bauds actuellement défini pour un port série particulier:get-baud-rate.c
Exécuter:
Les nombres que vous obtenez peuvent être recherchés
/usr/include/asm-generic/termios.h
, où il y a des#define
s tels queB9600
etc. Notez que les nombres dans le fichier d'en-tête et dans laget-baud-rate
sortie sont en octal.Vous pouvez peut-être expérimenter et voir à quoi ressemblent ces chiffres sur un nouveau démarrage et s'ils changent plus tard.
la source
stty
commande qui fait exactement cela. Par exemple,stty -F /dev/ttyACM0
me donne le débit en bauds actuel, qui est correct pour mon appareil.