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.

트래픽을 더 잘 이해하려면 16진수 덤프를 선호할 수 있습니다.

od -x < /dev/ttyS0

답변2

예를 들어 arduino uno의 출력을 모니터링하고 있습니다.

screen /dev/ttyUSB0 9600

관련 정보