在CentOS 6上通过Perl与USB设备交互

时间:2014-03-28 21:01:12

标签: linux perl centos usb

我需要使用杆式显示器(Logic Controls,PD3000)进行通信,主要是使用Perl向它发送文本和控制代码。有一个串口和USB版本的设备,我有一个是USB。

使用串行版本,这可能是微不足道的,但我不知道如何使用USB进行此操作。我想尽量保持简单,最好找一种简单的方法与串口设备进行交互。

以下是设备的启动消息:

Mar 28 11:02:04 joed kernel: usb 2-4: new full speed USB device number 2 using ohci_hcd
Mar 28 11:02:04 joed kernel: usb 2-4: New USB device found, idVendor=0fa8, idProduct=a030
Mar 28 11:02:04 joed kernel: usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Mar 28 11:02:04 joed kernel: usb 2-4: Product: Line Display PD3000
Mar 28 11:02:04 joed kernel: usb 2-4: Manufacturer: Logic Controls, Inc.
Mar 28 11:02:04 joed kernel: usb 2-4: configuration #1 chosen from 1 choice

其他一些信息:

[root@joed tmp]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 0fa8:a030 Logic Controls, Inc. 

[root@joed tmp]# find /dev/bus         
/dev/bus
/dev/bus/usb
/dev/bus/usb/002
/dev/bus/usb/002/002  <--- I gather this is the device, from the above.
/dev/bus/usb/002/001
/dev/bus/usb/001
/dev/bus/usb/001/001

[root@joed tmp]# usb-devices
T:  Bus=02 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0fa8 ProdID=a030 Rev=07.04
S:  Manufacturer=Logic Controls, Inc.
S:  Product=Line Display PD3000
C:  #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none)

我已经为perl模块Device :: USB寻找了一个RPM,但找不到CentOS(仅适用于PLD Linux),根据我的理解,混合CPAN和RPM是一个坏主意。

也许有一个更通用的实用程序/工具可以充当&#34; USB-to-serial&#34;适配器并将此设备作为简单的串行设备(如/ dev / ttyUSB01)?

我确实尝试过这个简单的测试,但失败了:

[root@joed tmp]# echo test > /dev/bus/usb/002/002
-bash: echo: write error: Invalid argument

0 个答案:

没有答案