minicom montrant hors ligne

16

J'essaie d'utiliser minicomdans Ubuntu.

Pour ce faire, je connecte d'abord mon convertisseur USB à DB9, puis je tape cette commande sur le terminal dmesg | grep ttypour vérifier si mon convertisseur USB à DB9 est correctement connecté.

J'ai obtenu cette sortie:

[    0.000000] console [tty0] enabled
[   54.200503] usb 2-1.2: pl2303 converter now attached to ttyUSB0
[   76.183173] cdc_acm 1-1.1:1.2: ttyACM0: USB ACM device
[  118.363275] cdc_acm 1-1.1:1.2: ttyACM0: USB ACM device
[  190.079494] cdc_acm 1-1.1:1.2: ttyACM0: USB ACM device

Donc, je sais que mon nom de convertisseur USB vers DB9 est ttyUSB0.

Les étapes suivantes sont exécutées dans l'ordre:

  • Ouvrez la minicomcommande en utilisant sudo minicom -o -s -w.
  • Ouvrez serial port setupet écrivez serial devicecomme /dev/ttyUSB0 et écrivez Hardware Flow Controlà NO.
  • Appuyez sur Enterpour quitter le menu principal puis sur Escpour démarrer minicom.

Après ces étapes, cela devrait fonctionner correctement, mais mon minicomaffiche "hors ligne".

Où est l'erreur dans ma configuration? Je vous remercie!

tabish
la source
7
Pas d'erreur. L'état en ligne / hors ligne est déterminé par l'état du signal CD (détection de porteuse) ou peut-être du signal DTR. Les deux peuvent être remplacés. Ces signaux ont été utilisés avec des modems pour indiquer une connexion solide et une disposition à parler, respectivement. Probablement avant votre temps.
lornix

Réponses:

3

Les ports série incluent des lignes de contrôle en plus des lignes de données.

Certains adaptateurs USB <-> série omettent souvent les lignes de contrôle.

Ils n'ont donc "croisé" que les lignes de données. Les autres lignes de port série, comme DTR - "Data Terminal Ready" et DCE "Data Carrier Detect" (souvent appelées "Carrier Detect") ne sont pas prises en charge.

Minicom dit que vous êtes hors ligne car la ligne DCD "Carrier Detect" est faible. Si vous utilisiez un MODEM, cette ligne serait élevée alors que le MODEM était connecté à la ligne téléphonique. Vous ne mentionnez pas de MODEM, mais tout ce qui est connecté ne produit pas de signal DCD ou l'adaptateur série USB <-> n'a pas de câblage pour cela.

Si les données arrivent bien, vous pouvez probablement ignorer cela.

Kingsley
la source
1

Vous pouvez essayer sudo minicom -D /dev/ttyUSB0, cela fonctionne bien dans mon ordinateur portable. Vous ne pouvez pas vous soucier du statut en ligne / hors ligne.

Ezio
la source
1

L'affichage hors ligne / en ligne de minicomest essentiellement une information: il n'affecte pas la communication du port série.

Mais si vous ne l'utilisez pas avec un modem réel, vous souhaiterez peut-être accéder aux paramètres "Modem et numérotation" et désactiver l'option "Le modem a une ligne DCD". Ensuite (je pense), l'indicateur en ligne / hors ligne suivra l'état du signal DSR du port série, ce qui peut être plus utile avec les périphériques non-modem.

telcoM
la source
"Modem et numérotation", btw, sont sous "cOnfigure Minicom".
duanev
0

Une fois la valeur par défaut mise à jour avec tous les paramètres appropriés, essayez de redémarrer minicom sans indicateur. Cela fonctionne pour moi la plupart du temps.

Dustin Thornton
la source
1
@IgorGanapolsky, cela signifie Par défaut
CJBrew
0

Je lis le manuel de minicom ( man minicom), j'ai trouvé ce paragragh:

Serial port setup
     A - Serial device
          /dev/tty1 or /dev/ttyS1 for most people.  /dev/cua<n> is still possible under linux, but not recommended any more because these devices are obsolete and
          many  newly  installed  systems with kernel 2.2.x or newer don't have them.  Use /dev/ttyS<n> instead.  You may also have /dev/modem as a symlink to the
          real device.
          If you have modems connected to two or more serial ports, you may specify all of them here in a list separated by space, comma or semicolon. When  Mini‐
          com  starts,  it  checks  the  list until it finds an available modem and uses that one. (However, you can't specify different init strings to them ..at
          least not yet.)
          To use a UNIX socket for communication the device name must be prefixed with "unix#" following by the full path and the filename of the socket.  Minicom
          will  then  try  to  connect to this socket as a client. As long as it cannot connect to the socket it stays 'offline'. As soon as the connection estab‐
          lishes, minicom goes 'online'. If the server closes the socket, minicom switches to 'offline' again.

Donc, je pense que le statut en ligne / hors ligne est utilisé uniquement avec les sockets UNIX. Je n'ai jamais utilisé cela, mais j'ai fait quelques applications avec USB et DB9 et toutes ont fonctionné avec le drapeau "offline". Si votre communication ne fonctionne pas, vérifiez que le débit en bauds et la parité sont corrects.

JCMiguel
la source