Linux 中的 ttys0、ttyUSB0 和 ttyAMA0 有什么区别?

use*_*087 20 linux tty

我想知道ttyS0,ttyUSB0ttyAMA0Linux 上的区别。

Cir*_*郝海东 23

ttyS0

当您使用此连接到目标时,您会在主机上获得什么:

在此处输入图片说明

来源

大多数笔记本电脑或小型开发板上不存在此端口,但仍存在于许多台式机上,并且对于操作系统开发人员非常方便,如以下所述:https : //askubuntu.com/questions/104771/where-are-kernel-panic -日志/932380#932380

您也可以通过qemu -device isa-serial.

例如,可以使用其中一根电缆连接两个桌面,并在它们之间直接通信以从您自己的远程桌面上获取外壳。在 Linux 计算机 1 上,您将运行:

screen /dev/ttyS0 115200
Run Code Online (Sandbox Code Playgroud)

然后电脑2会回复登录提示,然后你就可以从电脑1登录到电脑2了。

所以这有点像 SSH,可以看作是一种早期的网络形式。我认为这些电缆不能太长,否则信号会丢失,如果没有 TCP/IP 寻址/数据包机制,您将无法做那么多。

ttyUSB0

使用以下内容时您在主机上获得的信息:

当我将 Raspberry Pi 的 GPIO 连接到我的笔记本电脑以在没有屏幕的 Raspberry Pi 上获得外壳时,我也得到了它!

在此处输入图片说明

以及上述另一个更集成的 RPI 连接器版本:

来源

具体 RPI 示例位于:https : //stackoverflow.com/questions/22054578/how-to-run-a-program-without-an-operating-system/32483545#32483545

ttyAMA0

Sato 提到的 ARM 东西。

还没有遇到真正的硬件,当我这样做时会发布图片。我想我可以将带有串行端口的桌面连接到带有该接口的 RPI:https : //raspberrypi.stackexchange.com/questions/69697/what-is-dev-ttyama0

但我已经将它与 QEMU 一起使用:https : //github.com/buildroot/buildroot/tree/27d7ef126bc7f4eb1a757128466befa11245bbfd/board/qemu/arm-versatile

似乎 AMA 是AMBA的缩写形式?https://www.raspberrypi.org/forums/viewtopic.php?t=8075但是他们为什么要缩短 4 个字符的首字母缩写词?!

唯一有趣的 Linux 内核命中位于:https : //github.com/torvalds/linux/blob/v4.16/drivers/tty/serial/amba-pl011.c#L2488所以它似乎与 PL011 严格相关:http : //infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0183g/index.html这是 ARM 授权的 UART 控制器,我认为这是主要的实现。

ttySAC0

Kamil 报告说他的三星 Artik 710是另一个收藏品。

  • 从技术上讲,`ttyS0` 的原始含义似乎是“第一个串行端口*使用与原始 IBM PC UART、8250 芯片兼容的 UART 实现。ARM 上的 `ttyAMA0` 和例如 `ttySAC0` 将意味着“使用另一个特定硬件实现实现的第一个串行端口”。`ttyUSB0` 指的是第一个 USB 到串行转换器。`ttyACM0` 指的是使用 USB 的 CDC ACM(通信设备类,抽象控制模型)的模拟串行连接,它表示可能不存在实际的 RS-232 型串行线路,并且可以忽略波特率等硬件参数。 (2认同)

Sat*_*ura 15

  • ttyS0是 x86 和 x86_64 架构上第一个 UART 串​​行端口的设备。如果您有带串行端口的 PC 主板,您将使用ttySn连接调制解调器或串行控制台。
  • ttyUSB0是第一个 USB 串行转换器的设备。如果您有USB 串行电缆,您将使用 attyUSBn连接到路由器的串行端口。
  • ttyAMA0是ARM架构上第一个串口的设备。如果您有一个带有串行控制台并运行 Android 或 OpenELEC 的基于 ARM 的电视盒,您将使用 attyAMAn将控制台连接到它。

  • http://unix.stackexchange.com/a/127260/5132 上还有更多内容。 (2认同)