当前位置: 首页 > news >正文

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

文章目录

    • 1.下载LibusbDotNet库
    • 2.引入命名空间
    • 3. 实例化USB设备
    • 4.发送数据
    • 5.关闭连接

1.下载LibusbDotNet库

右击项目选择管理NuGet程序包

在这里插入图片描述
在弹出的界面中搜索LibusbDotNet,然后下载安装。在这里插入图片描述

2.引入命名空间

using LibUsbDotNet;
using LibUsbDotNet.Main;

3. 实例化USB设备

//替换自己的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.发送数据

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.关闭连接

myUsbDevice.Close();

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • vue3 axios ant-design-vue cdn的方式使用
  • ★ C++进阶篇 ★ 多态
  • yolov5明厨亮灶检测系统,厨师帽-口罩检测,带pyqt界面-可检测图片和视频,支持中文标签,检测接口已封装好并优化,代码可读性强!
  • QT Layout布局,隐藏其中的某些部件后,不影响原来的布局
  • ffmpeg实现视频的合成与分割
  • 深度学习自编码器 - 随机编码器和解码器篇
  • 深度学习之线性代数预备知识点
  • 幼儿园自动分班工具:使用Python进行实现
  • 如何在kotlin中给空字符串(””)和null值设置默认值问题?
  • Docker数据挂载本地目录
  • STM32单片机 内存 字 字节 位关系详细讲解
  • 【鸿蒙】HarmonyOS NEXT星河入门到实战6-组件化开发-样式结构重用常见组件
  • 关于安卓App自动化的一些想法
  • HTML5中下拉框标签`<select>`深入全面解析
  • 学习笔记 韩顺平 零基础30天学会Java(2024.9.16)
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • angular2开源库收集
  • extract-text-webpack-plugin用法
  • Java 网络编程(2):UDP 的使用
  • java8 Stream Pipelines 浅析
  • Linux快速复制或删除大量小文件
  • PHP的类修饰符与访问修饰符
  • python 装饰器(一)
  • Redis学习笔记 - pipline(流水线、管道)
  • SegmentFault 2015 Top Rank
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • 回流、重绘及其优化
  • 离散点最小(凸)包围边界查找
  • 容器服务kubernetes弹性伸缩高级用法
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 温故知新之javascript面向对象
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • ionic异常记录
  • SAP CRM里Lead通过工作流自动创建Opportunity的原理讲解 ...
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • ​马来语翻译中文去哪比较好?
  • ‌‌雅诗兰黛、‌‌兰蔻等美妆大品牌的营销策略是什么?
  • # include “ “ 和 # include < >两者的区别
  • # Redis 入门到精通(七)-- redis 删除策略
  • #### go map 底层结构 ####
  • #QT(QCharts绘制曲线)
  • #ubuntu# #git# repository git config --global --add safe.directory
  • (02)vite环境变量配置
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (二)丶RabbitMQ的六大核心
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)ssm高校实验室 毕业设计 800008
  • (十六)Flask之蓝图
  • (一)基于IDEA的JAVA基础12
  • (转)项目管理杂谈-我所期望的新人
  • (转)用.Net的File控件上传文件的解决方案
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .apk文件,IIS不支持下载解决
  • .net 4.0发布后不能正常显示图片问题