lendo serial da linha de comando do Linux

lendo serial da linha de comando do Linux

Eu tenho um dispositivo de porta serial que gostaria de testar usando a linha de comando do Linux.

Consigo usar stty e echo para enviar comandos para a porta serial, mas quando o dispositivo responde não tenho como ler o que vem da porta serial. estou usando

stty -F /dev/ttyS0 speed 9600 cs8 -cstopb -parenb && echo -n ^R^B > /dev/ttyS0

para enviar um comando ao dispositivo. O dispositivo opera e envia uma resposta em 300 ms. Como imprimo essa resposta no console usando a linha de comando?

Responder1

O mesmo que com a saída. Exemplo:

cat /dev/ttyS0

Ou:

cat < /dev/ttyS0

O primeiro exemplo é um aplicativo que abre a porta serial e retransmite o que lê para seu stdout(seu console). O segundo é o shell que direciona o tráfego da porta serial para qualquer aplicativo de sua preferência; este aplicativo específico apenas o retransmite stdinpara seu arquivo stdout.

Para obter melhor visibilidade do tráfego, você pode preferir um dump hexadecimal:

od -x < /dev/ttyS0

Responder2

Estou monitorando a saída do arduino uno como:

screen /dev/ttyUSB0 9600

informação relacionada