ttyUSB? 아니, ttyACM. ttyUSB 대신 ttyACM에 USB 장치를 할당하는 방법은 무엇입니까?

ttyUSB? 아니, ttyACM. ttyUSB 대신 ttyACM에 USB 장치를 할당하는 방법은 무엇입니까?

ttyUSB 대신 ttyACM이 포함된 USB 장치를 사용하고 싶습니다.

USB 장치인 SAMD21 보드가 있습니다. Linux(centos 6.5, 2.6.32-573.el6.x86_64) 컴퓨터에 연결했습니다. 컴퓨터가 이를 인식하지만(lsusb) /dev/ttyACM 파일이 없습니다. modprobe를 사용하여 /dev/ttyUSB에 연결할 수 있습니다. 하지만 ttyACM과 함께 사용하고 싶습니다. 이 USB 장치를 /dev/ttyACM에 어떻게 할당합니까?


[root@owlmt ~]# lsusb
....
Bus 002 Device 012: ID 1b4f:8d21

[root@owlmt ~]# usb-devices
T:  Bus=02 Lev=03 Prnt=06 Port=00 Cnt=01 Dev#= 12 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1b4f ProdID=8d21 Rev=01.00
S:  Manufacturer=SparkFun
S:  Product=SFE SAMD21
C:  #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=00 Driver=(none)
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=(none)

[root@owlmt ~]# ls /dev/ttyACM*
ls: cannot access /dev/ttyACM*: No such file or directory

답변1

실제로 유효한 USB ACM 인터페이스를 제공하고 이를 인식하는 데 필요한 모든 USB 설명자를 사용하려면 보드의 ATSAMD21G18 칩을 프로그래밍해야 합니다. 그러면 자동으로 /dev/ttyACM*장치 로 인식됩니다 .

ACM 인터페이스는 원래 PSTN 모뎀용으로 설계되었으며 운영 체제 및 모뎀 구성 도구는 모든 /dev/ttyACM*장치가 실제로 유선 또는 GPS 모뎀이라고 가정할 수 있습니다.그리고 그것을 감지할 것이다. 이로 인해 장치나 장치와 통신하는 응용 프로그램에서 예상치 못한 동작이 발생할 수 있습니다.

자세한 내용은 다음을 참조하세요. https://rfc1149.net/blog/2013/03/05/what-is-the-difference-Between-devttyusbx-and-devttyacmx/

관련 정보