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();
相关推荐
gc_229927 分钟前
C#学习调用OpenMcdf模块解析ole数据的基本用法(2)
c#·ole·openmcdf·offvis软件
bugcome_com39 分钟前
C# 变量详解(从入门到掌握)
c#
kylezhao20191 小时前
C#中如何防止序列化文件丢失和损坏
c#
玩c#的小杜同学2 小时前
工业级稳定性:如何利用生产者-消费者模型(BlockingCollection)解决串口/网口高频丢包问题?
笔记·学习·性能优化·c#·软件工程
游乐码4 小时前
c#结构体
开发语言·c#
bugcome_com6 小时前
# C# 变量作用域详解
开发语言·c#
三方测试小学徒8 小时前
GB/T 34946-2017《C#语言源代码漏洞测试规范》之整体解读
c#·cma·cnas·34946
光泽雨8 小时前
P/Invok执行时的搜索顺序
c#
用户298698530148 小时前
C# Word自动化:轻松插入特殊符号,告别手动烦恼!
后端·c#·.net