나는 사용자 정의 Linux 커널로 Arch Linux를 실행하는 cubieboard2를 가지고 있습니다. Arduino와 같은 USB 직렬 장치를 연결한 cubieboard2에서는 장치가 CDC ACM으로 인식되었습니다. 내 Linux 커널에는 여기에서 볼 수 있듯이 구성에서 CDC 옵션이 활성화되어 있습니다.페이지, 그런데 /dev/ttyACM0
애플리케이션을 사용할 수 없거나 minicom
직렬 포트를 사용할 수 없습니다 pyserial
.
Minicom은 방금 직렬 포트를 열 수 없다고 말했습니다. Pyserial은 포트를 열 수 있지만 읽으려고 하면 결과는 다음과 같습니다.
SerialException: 장치에서 읽을 준비가 되었다고 보고했지만 데이터가 반환되지 않았습니다(장치 연결이 끊어졌거나 포트에 여러 번 액세스했습니까?)
그러나 pyserial
바이트를 쓰려고 하면 결과는 다음과 같습니다.
SerialException: 쓰기 실패: [Errno 5] 입력/출력 오류.
직렬 포트를 닫으면 이름이 바뀌는 이상한 일이 발생합니다 /dev/ttyACM0
. /dev/ttyACM1
즉 , 닫으면 이름이 .
내 노트북에서 내 장치를 사용해 보았는데 pyserial
둘 다 잘 작동합니다 minicom
.
큐비보드2 정보:
$ uname -a
Linux alarm 3.4.61-rt77-ARCH+ #10 SMP PREEMPT RT Thu Apr 17 13:58:20 BRT 2014 armv7l GNU/Linux
내 커널 구성 파일:http://pastebin.com/raw.php?i=6LfsRyek
내 생각엔 활성화된 일부 커널 옵션이 누락된 것 같지만 어떤 옵션인지는 모르겠습니다.
어떤 아이디어가 있나요?
답변1
제가 보기엔 귀하의 기기에 문제가 있는 것 같습니다. OK를 열거할 수 있지만 추가 통신을 수행할 때 예기치 않은 동작이 발생할 수 있습니다. usbmon과 함께 Wireshark를 사용해 보십시오(또는 X 세션이 없으면 결국 tshark를 사용하게 됩니다). ttyACM1 이름은 일반적으로 통신 오류 후 다시 열거되어 발생합니다.