Problema com a comunicação no RS232

1

Eu usei o dispositivo serial usando a comunicação RS232. Eu quero verificar o sinal do dispositivo. Quando eu apertar o botão, posso obter dados Hexa (depois vou dizer sinal). Meu computador tem 4 portas seriais (placa principal: asrock IMB-183), então eu quero conectar serial ao dispositivo. Quando eu testar o dispositivo usando USB2SERIAL, posso obter o sinal com o minicom. Mas quando eu uso porta serial, o minicom não funciona.

Eu verifiquei o Rx, Tx usando o Windows (mesmo computador e mesmo dispositivo) com serial no programa do terminal (como o terminal highper), posso obter o sinal. Então eu acho que tenho problema com o Linux junto com a porta serial.

Eu verifiquei meu BIOS. No SuperI / O, liguei a porta COM para ativar. e eu verifiquei a discagem em grupo.

Agora mostro o status do meu computador e dispositivo.

 # id
......, 20(dialout), .......

 # cat /proc/tty/driver/serial
serinfo : 1.0 driver revision:
0: uart : 16550A port : 000003F8 irq: 4 tx:0 rx:0 RTS|DTR
1: uart : 16550A port : 000002F8 irq: 3 tx:0 rx:0 RTS|DTR
........

linux 3.13.0-32-genérico, Ubuntu 12.04

    
por 오찬민 07.02.2017 / 07:58

1 resposta

0

Como você mencionou que todas as portas funcionam no Windows, mas não no Ubuntu, talvez você possa tentar usar um kernel mais novo (A 16.04 / 16.10 LiveUSB fará) para ver se ele pode fazer outras portas funcionarem.

De qualquer forma, pelo menos parece que o seu ttyS0 está trabalhando com o comando echo / cat. A última coisa que posso sugerir é que se você ainda não conseguir qualquer sinal do seu dispositivo serial, tente usar o comando stty para alterar a taxa de transmissão:

sudo stty -F /dev/ttyS0  # Print current setting
sudo stty -F /dev/ttyS0 9600  # Set the baud rate

9600 aqui deve ser substituído pela taxa de transmissão correta.

Mais informações sobre o comando stty podem ser encontradas aqui .

    
por P.-H. Lin 08.02.2017 / 08:59