Odpowiedzi:
Myślę, że to jest to polecenie:
dmesg | grep tty
Uruchomienie tego na moim własnym Linux-ie (który ma tylko 1 port szeregowy) tworzy pojedynczą linię wyjściową ttyS0. Wypróbuj sam, zobaczysz, co mam na myśli.
tty
nazwę swojego tty. Zakładam, że właśnie to miał na myśli OP, ponieważ nie zadawali pytania „jakie porty szeregowe getty
działają?”.
Sprawdź, które UART zostały wykryte /proc/tty/driver/serial
. Linia uart:unknown
oznacza: nic nie wykryto (i prawdopodobnie nie istnieje).
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:16550A port:000002F8 irq:3 tx:111780 rx:1321 RTS|DTR|DSR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
Jeśli coś jest podłączone i napędza linie CTS, DSR lub CD (są to linie wejściowe), możesz być nawet całkiem pewien, że rzeczywiście coś jest ... To samo dotyczy liczby bajtów rx.
Jeśli musisz to zrobić programowo, odczyt danych wyjściowych z dmesg może być kłopotliwy, zamiast tego folder / dev / serial / by-id ma łącza sym, które są nazwane na podstawie możliwych do zidentyfikowania danych twojego urządzenia i wskazują na konkretne / dev / tty * są połączone z.
Nie jestem pewien, czy jest to jakaś specjalna reguła udev, która jest specyficzna dla dystrybucji, ale działa dobrze w Ubuntu, daj mi znać, czy to działa.
ttyS0
przez 3
odpowiadają COM1
za pośrednictwem 4
, odpowiednio. Zwykle mają te same zasoby sprzętowe i nie zawsze są wykrywalne, więc zawsze istnieją.
setserial
do mapowania zasobów ttyS0 wykorzystuje do tego z portu szeregowego. linux.die.net/man/8/setserial Zwykle nie jest to wymagane, ponieważ wszystko poza COM4 zwykle ma wystarczającą ilość sprzętu pomocniczego, aby Linux mógł go wykryć i odpowiednio dodać urządzenie szeregowe.
Istnieje również polecenie, setserial
które wykorzystuje je /proc/tty/driver/serial
do uzyskania danych.
# setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3