驱动开发向来是内核开发中工作量最多的一块,随着USB设备的普及,大量的USB设备的驱动开发也成为驱动开发者手头上做的最多的事情。本文主要介绍Linux平台下基于libusb的驱动开发,希望能够给从事Linux驱动开发的朋友带来些帮助,更希望能够给其他平台上的无驱设计带来些帮助。文章是我在工作中使用libusb的一些总结,难免有错误,如有不当的地方,还请指正。 [1] Linux 平台上的usb驱动开发,主要有内核驱动的开发和基于libusb的无驱设计。 对于内核驱动的大部分设备,诸如带
设计5V以外电源的小功率USB电路时,您必须确定是使用独立电池,还是使用来自主机的小型电源。如果电路需要大于5V的双轨电源(如采用了基于运放的仪表放大器),或必须用于便携计算机如笔记本电脑上,则问题就更复杂了。 USB 2标准规定了对连接设备的功率要求,即耗电最大100 mA,视为小功率;耗电最大500 mA,则视为大功率。本文所述电路原用于一个热致发光(TL)仪器设计,设计中的微控制器、USB接口控制器,以及10个运放均作为小功率设备,从一个USB端口获得全部电源。