Sự khác biệt giữa ttys0, ttyUSB0 và ttyAMA0 trong Linux là gì?


Câu trả lời:


15

ttyS0

Những gì bạn nhận được trên máy chủ khi bạn kết nối với mục tiêu này:

nhập mô tả hình ảnh ở đây

Nguồn

Cổng này không có trên hầu hết các máy tính xách tay hoặc các bảng nhỏ, nhưng vẫn có mặt trên nhiều máy tính để bàn và rất thuận tiện cho các nhà phát triển hệ điều hành.

Bạn cũng có được nó với qemu -device isa-serial .

Ví dụ, có thể nối hai máy tính để bàn với một trong những dây cáp đó và liên lạc trực tiếp giữa chúng để lấy vỏ trên máy tính để bàn từ xa.

ttyUSB0

Những gì bạn nhận được trên máy chủ khi sử dụng một trong hai:

Và đây là cách tôi kết nối GPIO của Raspberry Pi với máy tính xách tay của mình để lấy vỏ trên Raspberry Pi mà không cần màn hình !

nhập mô tả hình ảnh ở đây

Và một loại kết nối RPI khác:

Nguồn

Một ví dụ RPI cụ thể tại: /programming/22054578/how-to-run-a-program-without-an-operating-system/32483545#32483545

ttyAMA0

Một điều ARM như Sato đã đề cập.

Không chạy vào phần cứng thực sự, sẽ đăng ảnh khi tôi làm. Tôi nghĩ rằng tôi sẽ có thể kết nối máy tính để bàn của mình với một cổng nối tiếp với RPI của tôi với giao diện đó: /raspberrypi/69697/what-is-dev-ttyama0

Nhưng tôi đã sử dụng nó với QEMU: https://github.com/buildroot/buildroot/tree/27d7ef126bc7f4eb1a757128466befa11245bbfd/board/qemu/arm-versiverse

Có vẻ như AMA là dạng rút ngắn của AMBA ? https://www.raspberrypi.org/forums/viewtopic.php?t=8075 Nhưng tại sao họ lại rút ngắn một từ viết tắt 4 ký tự?!

Các lần truy cập kernel Linux thú vị duy nhất nằm dưới: https://github.com/torvalds/linux/blob/v4.16/drivers/tty/serial/amba-pl011.c#L2488 vì vậy dường như nó được liên kết chặt chẽ với PL011 : http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0183g/index.html là bộ điều khiển UART được ARM cấp phép, mà tôi nghĩ là việc triển khai thống trị.

ttySAC0

Kamil đã báo cáo rằng Samsung Artik 710 của mình , vì vậy một chiếc khác cho bộ sưu tập.


Còn ttySAC0 thì sao? Tôi có cái này trên kiến ​​trúc ARM64, thiết bị Samsung Artik 710.
Kamil

@Kamil OK, một cái mới cho tôi sau đó :-) Làm thế nào để bạn kết nối với nó từ máy chủ để xem ttySAC0? Cáp nào? Gửi một bức ảnh nếu bạn có thể.
Ciro Santilli 冠状 病毒 审查 事件

Tôi nhận được một ttyACM0 khi tôi cắm Arduino vào Linux.
Mike

12
  • ttyS0là thiết bị cho cổng nối tiếp UART đầu tiên trên các kiến ​​trúc x86 và x86_64. Nếu bạn có bo mạch chủ PC có cổng nối tiếp, bạn sẽ sử dụng ttySnđể gắn modem hoặc bàn điều khiển nối tiếp.
  • ttyUSB0là thiết bị cho bộ chuyển đổi nối tiếp USB đầu tiên. Nếu bạn có cáp nối tiếp USB, bạn sẽ sử dụng ttyUSBnđể kết nối với cổng nối tiếp của bộ định tuyến.
  • ttyAMA0là thiết bị cho cổng nối tiếp đầu tiên trên kiến ​​trúc ARM. Nếu bạn có hộp TV dựa trên ARM với bảng điều khiển nối tiếp và chạy Android hoặc OpenELEC, bạn sẽ sử dụng ttyAMAnđể gắn bảng điều khiển với nó.

1
Có nhiều hơn tại unix.stackexchange.com/a/127260/5132 .
JdeBP

3 cổng nối tiếp riêng biệt này bạn có thể đọc từ mỗi cổng riêng biệt cùng một lúc không? và gắn 3 thiết bị khác nhau 1 cho mỗi thiết bị này?
bakalolo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.