【发布时间】:2012-10-21 19:03:06
【问题描述】:
我已经阅读 linux 内核开发和设备驱动程序有一段时间了。我觉得已经准备好试一试真正的硬件了。我想为台式计算机的设备编写驱动程序,最好是usb(否则为pci)。但是我似乎想到的每一个设备都已经支持(包括我拥有的所有设备)。所以,欢迎任何建议。
附:愿意购买,前提是价格低于 100 英镑(150 美元)。
【问题讨论】:
我已经阅读 linux 内核开发和设备驱动程序有一段时间了。我觉得已经准备好试一试真正的硬件了。我想为台式计算机的设备编写驱动程序,最好是usb(否则为pci)。但是我似乎想到的每一个设备都已经支持(包括我拥有的所有设备)。所以,欢迎任何建议。
附:愿意购买,前提是价格低于 100 英镑(150 美元)。
【问题讨论】:
任何真正实用的事情都已经出于必要而进行了。我的投票是http://www.amazon.com/Cheeky-Computer-Controlled-Missile-Launcher/dp/B004AIZV48/ref=pd_sim_t_1。它很有趣,价格便宜,并且目前仅适用于 Windows。
协议应该很简单,但是会给你很好的调试USB通道的经验,以便弄清楚。当你完成后,你会有一个很酷的玩具:)
【讨论】:
基于 USB 的设备通常在内核级别得到很好的支持。这意味着您很少需要为内核中的每个 USB 设备编写设备驱动程序。这是因为应用程序可以轻松地使用 libusb(以及其他几个用户空间 USB 库)与设备通信。
如果您查看内核中的 USB 代码,您会发现它是所有硬件协议中最复杂的实现之一,但它在不同的 USB 设备上也是通用的。我之前做过 USB 设备的移植工作,相信我,libusb 已经足够好了。
检查一下(例如):
【讨论】:
您可以将 Enttec Open DMX USB Interface 驱动程序移植到最新的 3.x 内核。
git clone http://git.hbels.com/public/dmx_usb_module
libusb 听起来也更适合我。
【讨论】: