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


Answers:


15

ttyS0

当您以此连接到目标时,您在主机上得到什么:

在此处输入图片说明

资源

该端口在大多数笔记本电脑或小型开发板上不存在,但在许多台式机上仍然存在,并且对于OS开发人员而言非常方便。

您也可以使用它qemu -device isa-serial

例如,可以使用其中一根电缆连接两个桌面,并在它们之间直接进行通信,以从您自己的远程桌面上获得一个外壳。

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

佐藤所提到的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是另外一款用于收藏。


ttySAC0呢?我在ARM64体系结构Samsung Artik 710设备上安装了此设备。
卡米尔

@Kamil好吧,那对我来说是个新人:-)您如何从主持人那里看到它ttySAC0?哪条电缆?如果可以,请发送照片。
Ciro Santilli冠状病毒审查六四事件法轮功

当我将Arduino插入Linux时,我得到了ttyACM0。
迈克

12
  • ttyS0是x86和x86_64体系结构上第一个UART串行端口的设备。如果您的PC主板带有串行端口,则可以使用ttySn来连接调制解调器或串行控制台。
  • ttyUSB0是第一个USB串行转换器的设备。如果您有USB串行电缆,则可以使用a ttyUSBn连接到路由器的串行端口。
  • ttyAMA0是ARM体系结构上第一个串行端口的设备。如果您有一个带有串行控制台且运行Android或OpenELEC的基于ARM的电视盒,则可以使用ttyAMAn将控制台连接到它。


您可以同时分别从每个端口读取这3个不同的串行端口吗?并将3个不同的设备1附加到每个设备上?
bakalolo
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.