Linux libusb開發使用者USB驅動程式

2021-06-29 03:07:43 字數 1577 閱讀 1442

libusb是使用者端驅動程式封裝庫,是usb主機對usb裝置進行操作的函式集合,有了它我們針對某型號usb裝置就不用去修改比較繁瑣的linux核心驅動了,方便了對裝置的使用與除錯。我電腦的程式設計環境是ubuntu12.04+geany(一款linux下的整合開發工具,個人感覺挺好用的)。接下來分享一下**:

#include

#include

#include

#define idvendor 0x0079 

//這是我裝置的廠商號

#define idproduct 0x0006 

//這是我裝置的產品號,當你的usb裝置接入電腦時,使用lsusb -v命令來檢視裝置資訊,請看下面第三張中的0079:0006

//#define printdev

char enp_num[8],buf8[8],is_change=0;

//端點描述符

static void print_endpoint(struct usb_endpoint_descriptor *endpoint)

static void print_altsetting(struct usb_inte***ce_descriptor *inte***ce)

//顯示裝置所擁有的所有介面的描述符

static void print_inte***ce(struct usb_inte***ce *inte***ce)

//配置描述符

static void print_configuration(struct usb_config_descriptor *config)

static void print_device(struct usb_device *dev)

//因為我的遊戲裝置屬於hid型別,所以他與電腦通過中斷端點進行資料傳輸。當搖桿位置變化或者按鍵按下時,讀取裝置中斷端點值

static int read_interupt(struct usb_device *dev)

} if(is_change==1)

printf("\n");

} if (udev)

usb_close(udev);

return 0;

}int main(int argc, char *argv)  }

} }printf("*****************************\n");

return 0;

}//控制傳輸命令,通過控制端點(端點0)進行資料傳輸

//renum=usb_control_msg(udev,0x80,usb_req_get_descriptor,

//0x0100,0,description,usb_dt_device_size,0);

如下面所示:

Linux libusb開發使用者USB無驅通訊

1 linux下交叉編譯libusb的方法及編譯乙個使用了libusb庫的test程式的方法 2 3 libusb的使用教程和例子 4 libusb庫 linux下親測有效 專案上需要將乙個自己開發的裝置通過usb介面 連線到linux系統或android系統的裝置,然後通過傳送命令來控制我們的裝置...

Linux libusb 安裝及簡單使用

ubuntu下最簡單的安裝方法 sudo apt get install libusb dev 也可按照下面的方法,自己編譯,安裝,新手建議使用apt get install 的方法安裝 一 參考文件 1.libusb1 fails do configure task with udev suppo...

團隊開發 典型使用者

典型使用者 名字 韓xx 年齡 22 性別 男 職業 學生 代表的使用者在市場上的比例 學生 使用軟體的典型場景 夜路 床下牆角等陰暗角落 動機目的 照亮 使用者偏好 簡單易操作 使用者比例 典型場景 晚歸 使用者場景 1 背景 1 典型使用者 韓xx 2 使用者的需求 迫切需要解決的問題 韓xx ...