GNU/Linux >> Tutoriels Linux >  >> Linux

Comment savoir quel /dev/ttyS* est mon port série ?

Je pense que c'est cette commande :

dmesg | grep tty

L'exécuter sur ma propre machine Linux (qui n'a qu'un seul port série) produit une seule ligne de sortie ttyS0. Essayez par vous-même, vous verrez ce que je veux dire.


Voir quels UART ont été détectés dans /proc/tty/driver/serial . Une ligne avec uart:unknown signifie :rien détecté (et probablement inexistant).

# cat /proc/tty/driver/serial 
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:16550A port:000002F8 irq:3 tx:111780 rx:1321 RTS|DTR|DSR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3

Si quelque chose est connecté et pilote les lignes CTS, DSR ou CD (ce sont des lignes d'entrée), vous pouvez même être sûr qu'il y a réellement quelque chose... Il en va de même pour le rx-byte-count.


Si vous avez besoin de le faire par programme, la lecture de la sortie de dmesg peut être gênante, à la place, le dossier /dev/serial/by-id a des liens symboliques qui sont nommés d'après des données identifiables de votre appareil et pointent vers le /dev/tty* spécifique qu'ils sont connectés.

Je ne sais pas s'il s'agit d'une règle udev spéciale spécifique à la distribution, mais cela fonctionne bien dans Ubuntu, faites-moi savoir si cela fonctionne.


Linux
  1. Comment remplacer un disque dur défaillant dans un RAID logiciel Linux

  2. Comment générer un mot de passe aléatoire sous Linux en utilisant /dev/random

  3. Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?

  4. Comment envoyer des données à un port série et voir une réponse ?

  5. Comment trouver quel port série est utilisé ?

Comment désactiver complètement un Cronjob vers /dev/null/?

Comment encoder en base64 /dev/random ou /dev/urandom ?

Comment échanger /dev/sda avec /dev/sdb ?

Comment savoir à partir de quel dossier un processus est en cours d'exécution ?

Linux :Différence entre /dev/console , /dev/tty et /dev/tty0

Créer un périphérique de bloc virtuel qui écrit dans /dev/null