1. 程式人生 > >如何在Linux檢查並使用串列埠

如何在Linux檢查並使用串列埠

如何根據不同的需求(如modem,連線空的module或連線到一個dumb終端)在Linux下檢查並配置串列埠呢?

Linux 提供了各種工具, Linux 使用 ttySx 作為一個串列埠裝置的名稱。例如,COM1 (DOS/Windows 名字) 是 ttyS0, COM2 是 ttyS1 等等。

任務: 顯示檢測到的系統串列埠支援

簡單的執行 dmesg 命令
$ dmesg | grep tty
輸出:

[   37.531286] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[   37.531841] 00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[   37.532138] 0000:04:00.3: ttyS1 at I/O 0x1020 (irq = 18) is a 16550A

setserial 命令

setserial 是一個程式用於設定並/或報告某個串列埠關聯的配置資訊。該資訊包括串列埠用到的I/O 埠和中斷號,以及Break鍵是否應被解釋為Secure Attention Key 等等。 僅僅是輸出如下的命令:
$ setserial -g /dev/ttyS[0123]
輸出:

/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x1020, IRQ: 18
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3

帶-g選項的setserial幫助找到你的Linux板子上的物理串列埠。

Linux 串列埠控制檯程式

一旦串列埠被確定了,你就能使用許多的工具來配置Linux板子:

  1. - 用於控制modem和連線到dump 裝置的最好的串列埠通訊程式。
  2. - 一個內建智慧PPP 撥號器。
  3. getty / agetty - agetty 開啟一個 tty 埠, 提示登入名稱並呼叫 /bin/login 命令。
  4. grub / lilo configuration - 配置串列埠為系統控制檯。