原创 libusb与CDC/HID

2009-2-22 17:35 9495 6 6 分类: 软件与OS
Windows和Linux操作系统,都把CDC/HID设备作为系统内置的支持。所以都是使用系统内置的驱动。这样的话,就无法使用libusb来控制。
这个问题是出现在Versaloon的一个定制版本上的,这个版本实现的是一个CDC接口。如果使用系统内置的CDC驱动的话,则Versaloon就是一个USB<==> 串口;如果使用非系统内置的CDC驱动的话,则Versaloon就是一个编程调试器。

这里,需要根据不同的系统来使用不同的解决方法。目前只在WindowsXP和Ubuntu 8.04下测试。
WindowsXP下,所有的USB设备都需要驱动,如果使用CDC驱动的话,就可以作为USB<==>串口设备使用,如果使用libusb生成的驱动的话,就可以使用libusb操作。
Ubuntu 8.04下,CDC驱动是在cdc_acm模块中实现的,一般而言,CDC设备连接上电脑后,Ubuntu的设备管理会自动查找到cdc_acm驱动模块,并自动载入。这种情况下,Versaloon就是USB<==>串口设备。如果把Versaloon作为编程调试器的话,需要禁用掉cdc_acm驱动模块。可以修改/etc/modprobe.d/blacklist文件,添加"blacklist cdc_acm"即可禁用cdc_acm模块。使用dmesg确认。
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
6
关闭 站长推荐上一条 /3 下一条