Moxa Uport 1110 USB-직렬 장치와 함께 GPS를 사용하려고 합니다. UPort 드라이버가 정상적으로 설치되고 GPS에서 NMEA(텍스트) 데이터를 전송합니다. 그러나 명령을 내릴 때
cat /dev/ttyUSB0
내 터미널(중요한 경우 UTF8 로케일)에 바이너리 혼란이 표시됩니다. Windows에서는(따라서 다른 드라이버를 사용하지만 둘 다 공식적임) 잘 작동하며 데이터를 보고 GPS에 액세스할 수 있습니다.
일부 터미널 설정에 문제가 있는지 궁금합니다.
나는 이전에 안정적인 GPS 구성의 이유이기도 한 stty ispeed 9600을 게시한 적이 있습니다. 또한 stty ispeed를 낮은 수준에서 높은 수준까지 시도했지만 여러 유형의 혼란을 겪었습니다.
가끔은 드문 시도를 통해 좋은 글이 나타나기도 합니다.
내 현재 터미널 설정은 다음과 같습니다
[root@blade gpsd-3.14]# stty -F /dev/ttyUSB0
speed 9600 baud; line = 0;
eof = ^A; min = 1; time = 0;
-brkint -icrnl -imaxbel
-opost -onlcr
-isig -icanon -iexten -echo -echoe -echok -echoctl -echoke
문제가 있는 곳을 찾는 데 도움을 주시면 감사하겠습니다.
답변1
내 경험에 따르면(몇 년 전부터) 장치가 꺼지면 물리적 회선 특성이 기본값으로 다시 재설정됩니다. 따라서 stty ... < /dev/ttyUSB0
명령이 완료되면 장치가 종료되고 기본값으로 다시 재설정되므로 독립 실행형 명령으로 실행할 필요가 없습니다.
이 문제를 해결하려면 다음과 같이 해야 합니다.
sleep 3600 </dev/ttyUSB0 & # Open the device and keep it open (for 1hr)
stty ... </dev/ttyUSB0 # Set the desired characteristics
cat /dev/ttyUSB0 # Read from the device
...
kill %1 # Finished with the "sleep"