C#基于LibUsbDotNet实现USB通信(一)
生活随笔
收集整理的這篇文章主要介紹了
C#基于LibUsbDotNet实现USB通信(一)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?
網(wǎng)上C#USB通信的資料比較少, 基本上都是基于LibUsbDotNet 和 CyUsb, 關(guān)于打印機設(shè)備的還有一個OPOS。
本篇文章基于LibUsbDotNet。
1. 下載并安裝?LibUsbDotNet 安裝文件。
2. 運行Filter Wizard, Install a device filter。 安裝需要通信的usb設(shè)備。
3. 建一個簡單的控制臺項目,進行測試, 下圖為打印需要通信設(shè)備的信息。
相關(guān)代碼:
引用
using LibUsbDotNet; using LibUsbDotNet.Main; using LibUsbDotNet.Info;PrintUsbInfo
public static void PrintUsbInfo(){UsbDevice usbDevice = null;UsbRegDeviceList allDevices = UsbDevice.AllDevices;Console.WriteLine("Found {0} devices", allDevices.Count);foreach (UsbRegistry usbRegistry in allDevices){Console.WriteLine("Got device: {0}\r\n", usbRegistry.FullName);if (usbRegistry.Open(out usbDevice)){Console.WriteLine("Device Information\r\n------------------");Console.WriteLine("{0}", usbDevice.Info.ToString());Console.WriteLine("VID & PID: {0} {1}", usbDevice.Info.Descriptor.VendorID, usbDevice.Info.Descriptor.ProductID);Console.WriteLine("\r\nDevice configuration\r\n--------------------");foreach (UsbConfigInfo usbConfigInfo in usbDevice.Configs){Console.WriteLine("{0}", usbConfigInfo.ToString());Console.WriteLine("\r\nDevice interface list\r\n---------------------");ReadOnlyCollection<UsbInterfaceInfo> interfaceList = usbConfigInfo.InterfaceInfoList;foreach (UsbInterfaceInfo usbInterfaceInfo in interfaceList){Console.WriteLine("{0}", usbInterfaceInfo.ToString());Console.WriteLine("\r\nDevice endpoint list\r\n--------------------");ReadOnlyCollection<UsbEndpointInfo> endpointList = usbInterfaceInfo.EndpointInfoList;foreach (UsbEndpointInfo usbEndpointInfo in endpointList){Console.WriteLine("{0}", usbEndpointInfo.ToString());}}}usbDevice.Close();}Console.WriteLine("\r\n----- Device information finished -----\r\n");}}調(diào)用
public static void Main(string[] args){PrintUsbInfo();// Wait for user input..Console.ReadKey();}?
轉(zhuǎn)載于:https://www.cnblogs.com/jackbase/p/7244046.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的C#基于LibUsbDotNet实现USB通信(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cad导出pdf_CAD如何导出高分辨率
- 下一篇: 数据库基本查询语句