Não é possível ler dados seriais de / dev / ttyUSB0

1

Estou usando um adaptador RS485 para USB para se comunicar com hardware, cujos parâmetros podem ser alterados enviando dados em hexadecimais. Eu coloquei:

sudo chmod o+rw /dev/ttyUSB0
stty -F /dev/ttyUSB0 19200 -parodd

Dois terminais estão abertos. O primeiro é:

cat -v < /dev/ttyUSB0

O segundo sendo:

echo -e "\x00\x00\x00\x10\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x92" < /dev/ttyUSB0

O dispositivo deve enviar de volta uma string semelhante, mas não recebo nada no primeiro terminal. A sequência de dados que está sendo enviada foi verificada como o formato correto pelo fabricante. Por que não há resposta?

edit: Só para fornecer mais algumas informações sobre isso, eu também tentei no terminal 1 hexdump < /dev/ttyUSB0 sem sucesso. Também ativei / desativei cada uma das configurações stty a seguir para determinar se elas tinham algum efeito:

parenb, ixon, crtscts, cread

Atualmente, isso é o que está executando o stty -a < /dev/ttyUSB0 :

speed 19200 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; discard = ^O;
min = 1; time = 0;
parenb -parodd -cmspar cs8 hypcl -cstopb cread clocal crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inclr -igncr -icrnl ixon -ixoff -iuclc -ixany
-ixmabel -iutf8
-opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig -icanon iexten -echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho
-extproc
    
por KShire 25.06.2018 / 21:01

1 resposta

2

Você confundiu < com > . Você tem

echo -e ... < /dev/ttyUSB0

mas deve ser

echo -e ... > /dev/ttyUSB0
    
por 25.06.2018 / 21:20