RS-232 출력을 버튼으로 사용

RS-232 출력을 버튼으로 사용

나는 RS-232 데이터를 읽고 키 입력으로 보내는 것과 같은 간단한 작업(Windows에서는 매우 간단함)을 수행하려고 노력해 왔습니다. 나는 소프트웨지를 사용해 보았습니다. 정확히 그렇게 해야 합니다. 불행히도 제대로 작동하지 않습니다(버기, 쓰레기를 많이 보냅니다). 할 수 있는 일은 다음과 같습니다.

화면/dev/ttyUSB0 9600,cs8,-parenb,-cstopb,-hupcl

RFID 카드를 사용할 때마다 카드 리더기의 데이터가 표시됩니다(minicom에서도 동일한 기능이 작동합니다). 하지만 활성 응용 프로그램에 키 입력으로 보내려면 어떻게 해야 합니까?

추신: 저는 Raspberry Pi 2를 사용하고 있습니다.

답변1

Linux에서는 이는 2단계 프로세스입니다.

먼저 필요한 경우 속도를 설정합니다(대부분의 일반적인 직렬 장치에서는 사용할 수 없음). 대부분은 기본값(마지막으로 확인했을 때 9600)에서 잘 작동하며 실제로는 많은 데이터(예: 모뎀)를 채우려는 속도나 장치에 필요한 속도만 설정하면 됩니다. 속도를 설정하려면 stty를 사용하면 됩니다.

stty -speed 19200 -f /dev/something

둘째, 입력용과 출력용으로 두 개의 터미널을 여는 것이 더 쉽습니다("필수"는 아니지만 더 쉽게 만들 수 있음).

장치(또는 무엇이든)에서 읽으려면

cat /dev/something아니면 cat -v < /dev/something둘 다 시도해보고 어느 것이 더 마음에 드는지 확인하는 것이 더 좋습니다.

입력 측에서 장치로 보냅니다.

echo -ne 'your gibberish here' > /dev/something잘 작동할 겁니다.

실제로 해야 할 일은 "파일"을 읽고 쓰는 것뿐입니다. 그게 다야.

자세한 내용은 다음을 확인하세요.https://askubuntu.com/questions/411108/how-to-write-characters-to-serial-port또는직렬 포트로 데이터를 보내고 답을 확인하는 방법은 무엇입니까?그리고http://papers.mpastell.com/serial.pdf

낙심하지 마십시오. 때로는 Windows에서 Linux로 마이그레이션하는 것이 약간 어려울 수 있습니다. 복잡한 대답을 기대하지만 일반적으로 간단합니다.

관련 정보