C#怎么使用LibUsbDotNet实现USB通信

发布时间:2020-09-14 10:44:11 作者:小新
来源:亿速云 阅读:605

小编给大家分享一下C#怎么使用LibUsbDotNet实现USB通信,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

  1. 下载并安装 LibUsbDotNet 安装文件。

  2. 运行Filter Wizard, Install a device filter。 安装需要通信的usb设备。

  C#怎么使用LibUsbDotNet实现USB通信

  3. 建一个简单的控制台项目,进行测试, 下图为打印需要通信设备的信息。

  C#怎么使用LibUsbDotNet实现USB通信

相关代码:  

引用  

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");
            }
        }

调用

public static void Main(string[] args)
        {
            PrintUsbInfo();

            // Wait for user input..
            Console.ReadKey();
        }

看完了这篇文章,相信你对C#怎么使用LibUsbDotNet实现USB通信有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

推荐阅读:
  1. C# 基于websocket实时通信的实现—GoEasy
  2. C# 基于websocket实时通信的实现—GoEasy

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

otn

上一篇:MySQ实现数据备份的方法

下一篇:C#中实现监控类属性更改的代码案例分享

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》