C# USB通信技术(通过LibUsbDotNet库)

文章目录

1.下载LibusbDotNet库

复制代码
右击项目选择管理NuGet程序包

在弹出的界面中搜索LibusbDotNet,然后下载安装。

2.引入命名空间

csharp 复制代码
using LibUsbDotNet;
using LibUsbDotNet.Main;

3. 实例化USB设备

csharp 复制代码
//替换自己的PID和VID,在设备管理器中查看
UsbDeviceFinder myUsbFinder = new UsbDeviceFinder(vid, pid);
UsbDevice myUsbDevice = UsbDevice.OpenUsbDevice(myUsbFinder);
                  
IUsbDevice wholeUsb = myUsbDevice as IUsbDevice;
wholeUsb.SetConfiguration(1);//选择第一个可用配置
wholeUsb.ClaimInterface(0);//使用第一个接口

4.发送数据

csharp 复制代码
byte[] b = Encoding.ASCII.GetBytes(liens);
int bytesWritten;
//配置输出端点
UsbEndpointWriter endpointWriter = myUsbDevice.OpenEndpointWriter(WriteEndpointID.Ep01);
//b:发送的数据
//1000:延时1毫秒
//bytesWritten:发送的字节数
endpointWriter.Write(b, 1000, out bytesWritten);

5.关闭连接

csharp 复制代码
myUsbDevice.Close();
相关推荐
MM_MS3 小时前
SQL Server数据库和Visual Studio (C#)联合编程
开发语言·数据库·sqlserver·c#·visual studio
c#上位机6 小时前
halcon计算区域骨架
图像处理·人工智能·计算机视觉·c#·halcon
曹牧7 小时前
C#:Dictionary类型数组
java·开发语言·c#
GeekyGuru8 小时前
C#:游戏开发的高效利器
开发语言·c#
关关长语9 小时前
基于NCrontab实现Covarel扩展秒级任务调度
c#·.net
足球中国9 小时前
什么情况下会发生跨域
c#·dataexcel·cfucion
yue00810 小时前
C# 实现电脑锁屏功能
开发语言·c#·电脑·电脑锁屏
2501_9307077810 小时前
如何在 C# 中分离饼图的某个区域
开发语言·c#
c#上位机10 小时前
halcon图像膨胀—dilation1
图像处理·算法·c#·halcon
缺点内向10 小时前
如何在C#中添加Excel文档属性?
开发语言·数据库·c#·.net·excel