чтение из последовательного порта из командной строки Linux

чтение из последовательного порта из командной строки Linux

У меня есть устройство с последовательным портом, которое я хотел бы протестировать с помощью командной строки Linux.

Я могу использовать stty и echo для отправки команд на последовательный порт, но когда устройство отвечает, у меня нет возможности прочитать, что поступает с последовательного порта. Я использую

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

для отправки команды устройству. Устройство работает и отправляет ответ обратно через 300 мс. Как вывести этот ответ на консоль с помощью командной строки?

решение1

То же, что и с выходом. Пример:

cat /dev/ttyS0

Или:

cat < /dev/ttyS0

Первый пример — это приложение, которое открывает последовательный порт и передает то, что оно считывает с него, на свою stdout(вашу консоль). Второй пример — это оболочка, направляющая трафик последовательного порта в любое приложение, которое вам нравится; это конкретное приложение затем просто передает его stdinв свою stdout.

Чтобы лучше видеть дорожную обстановку, вы можете использовать шестнадцатеричный дамп:

od -x < /dev/ttyS0

решение2

Я отслеживаю выходные данные для arduino uno следующим образом:

screen /dev/ttyUSB0 9600

Связанный контент