最近在做畢設,一個U盾相關的題目。需要用到USB2.0協議,實現PC和一個硬件平台通信。硬件平台的USB驅動使用內置的函數就可以完成,但PC端的驅動,比較讓人頭疼,因為沒接觸過Windows下的驅動開發。通過查找相關的USB資料,發現了libusb可以實現USB的無驅化設計。於是,打算配置相關的庫。在網上(http://sourceforge.net/projects/libusb-win32/files/)找到了相關的庫文件。我下載的文件是libusb-win32-bin-1.2.6.0.zip。將該文件解壓縮,會得到幾個文件。
首先是bin文件夾,該文件夾中的inf-wizard.exe是設備第一次連接PC時,需要通過該應用程序安裝一些文件。打開該應用程序,找到自己的設備(通過兩個ID確定是哪個設備,我的是0x1122 0x3344),點擊下一步,然后保存信息,最后安裝。這樣當自己編寫libusb-win32代碼時就可以找到該設備。
其次是include和lib文件夾,工程配置時需要用到,我是在code::blocks下進行代碼的編寫。建立好工程后,依次點擊Project -> Properties ->Project Build options->Linker settings。然后點擊Add添加庫,添加lib文件夾下的gcc中(需要根據你的編譯器類型選擇)的libusb.a。並且 將include文件夾下的libusb0_usb.h頭文件復制到工程中。這樣就配置成功,接着就可以編寫代碼了。