Quelle est la différence entre ttys0, ttyUSB0 et ttyAMA0 sous Linux?

Réponses:

15

ttyS0

Ce que vous obtenez sur l'hôte lorsque vous vous connectez à la cible avec ceci:

entrez la description de l'image ici

La source

Ce port n'est pas présent sur la plupart des ordinateurs portables ou des petits devboards, mais il est toujours présent sur de nombreux ordinateurs de bureau et est très pratique pour les développeurs de systèmes d'exploitation.

Vous obtenez également avec qemu -device isa-serial.

Par exemple, vous pouvez connecter deux bureaux avec l'un de ces câbles et communiquer directement entre eux pour obtenir un shell sur le bureau distant à partir du vôtre.

ttyUSB0

Ce que vous obtenez sur l'hôte lorsque vous utilisez l'un des éléments suivants:

Et c'est ainsi que je connecte les GPIO de mon Raspberry Pi à mon ordinateur portable pour obtenir un shell sur un Raspberry Pi sans écran !

entrez la description de l'image ici

Et un autre type de connecteur RPI:

La source

Un exemple concret de RPI sur: /programming/22054578/how-to-run-a-program-without-an-operating-system/32483545#32483545

ttyAMA0

Une chose ARM comme mentionné par Sato.

Je n'ai pas rencontré ça pour du vrai matériel, je posterai des photos quand je le ferai. Je pense que je serais en mesure de connecter mon bureau avec un port série à mon RPI avec cette interface: /raspberrypi/69697/what-is-dev-ttyama0

Mais je l'ai utilisé avec QEMU: https://github.com/buildroot/buildroot/tree/27d7ef126bc7f4eb1a757128466befa11245bbfd/board/qemu/arm-versatile

Il semble que l'AMA soit une forme abrégée d' AMBA ? https://www.raspberrypi.org/forums/viewtopic.php?t=8075 Mais pourquoi raccourciraient-ils un acronyme à 4 caractères?!

Les seuls hits intéressants du noyau Linux sont sous: https://github.com/torvalds/linux/blob/v4.16/drivers/tty/serial/amba-pl011.c#L2488 , il semble donc être strictement lié au PL011 : http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0183g/index.html qui est un contrôleur UART autorisé par ARM, qui je pense est l'implémentation dominante.

ttySAC0

Kamil a rapporté que son Samsung Artik 710 , donc un autre pour la collection.

Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功
la source
Qu'en est-il du ttySAC0? Je l'ai sur l'architecture ARM64 de l'appareil Samsung Artik 710.
Kamil
@Kamil OK, un nouveau pour moi alors :-) Comment vous connectez-vous de l'hôte pour voir ttySAC0? Quel câble? Envoyez une photo si vous le pouvez.
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功
J'obtiens un ttyACM0 lorsque je branche un Arduino sur Linux.
Mike
12
  • ttyS0est le périphérique du premier port série UART sur les architectures x86 et x86_64. Si vous avez une carte mère PC avec des ports série, vous utiliserez un ttySnpour connecter un modem ou une console série.
  • ttyUSB0est l'appareil du premier convertisseur série USB. Si vous avez un câble série USB, vous utiliserez un ttyUSBnpour vous connecter au port série d'un routeur.
  • ttyAMA0est le périphérique du premier port série sur l'architecture ARM. Si vous avez un boîtier TV ARM avec une console série et exécutant Android ou OpenELEC, vous utiliseriez un ttyAMAnpour y attacher une console.
Satō Katsura
la source
1
Il y a plus sur unix.stackexchange.com/a/127260/5132 .
JdeBP
ces 3 ports série distincts sont-ils lisibles séparément à la fois? et attacher 3 appareils différents 1 à chacun d'eux?
bakalolo