Como sei qual / dev / ttyS * é minha porta serial?

25

Eu tenho um laptop que tem apenas uma porta serial.

Eu entrei:

/dev 

diretório, e eu encontrei:

ttyS0
ttyS1
ttyS2
ttyS3

Como eu sei qual desses "ttyS" se refere à minha porta serial?

    
por sivabudh 14.04.2010 / 23:10

5 respostas

21

Eu acho que é esse comando:

dmesg | grep tty

Executar isso em minha própria caixa Linux (que possui apenas 1 porta Serial) produz uma única linha de saída ttyS0. Tente você mesmo, você verá o que quero dizer.

    
por 14.04.2010 / 23:24
7

Veja quais UARTs foram detectados em /proc/tty/driver/serial . Uma linha com uart:unknown significa: nada detectado (e provavelmente não existente).

# 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

Se algo estiver conectado e direcionando as linhas CTS, DSR ou CD (estas são linhas de entrada), você pode até ter certeza de que realmente existe algo ... O mesmo é verdadeiro para a contagem de bytes de rx.

    
por 30.06.2016 / 17:45
6

Se você precisar fazer isso programaticamente, ler a saída do dmesg pode ser problemático, em vez disso, a pasta / dev / serial / by-id possui links sym que são nomeados após dados identificáveis do seu dispositivo e apontam para o específico / dev / tty * eles estão conectados a.

Não tenho certeza se esta é uma regra especial do udev específica para distribuição, mas funciona bem no Ubuntu, me avise se funciona.

    
por 20.12.2014 / 14:55
3

ttyS0 a 3 correspondem a COM1 a 4 , respectivamente. Eles geralmente têm os mesmos recursos de hardware e nem sempre são detectáveis, então eles sempre existem.

    
por 14.04.2010 / 23:17
0

Existe também o comando setserial , que usa /proc/tty/driver/serial para obter seus dados.

# 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
    
por 12.09.2016 / 17:19