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

usb端点笔记

端点:端点是USB设备的唯一可识别部分,其是主机和设备之间的通信流的终点。是一个USB设备或主机上的一个数据缓冲区,用来存放和发送USB的各种数据。(逻辑上)
接口:可以理解为一个功能。(物理功能)
配置:对接口的组合,在连接期间选定是那种组合。(逻辑上)
一般情况下,通常把工作在什么模式下的端点就叫什么端点,例如:控制端点、批量端点、同步端点和中断端点。
端点0,是设备的默认控制端点,在设备上电后就存在并可以使用,在Set Config之前所有的传输都是通过端点0传输的。  所有USB设备需要实现一个默认的控制方式, 它就是既能输入也能输出的端点0, Host通过这端点0获取设备的描述、配置、状态,对设备进行设置。
一个设备只有一个设备号,有若干端点,在一个配置中,不同接口的端点号不同,端点号是唯一的,就像是例子中的教室,可能在不同配置中,同一个端点属于了不同的接口,就像是一个教室,在不同的配置中可以是教室也可以是考场。但是其端点号不可改变。端点0不独立属于任何配置和任何接口,是归属于USB设备
一个设备有一个或多个配置,一个配置就是一个功能集合(即是接口的集合),一个接口就是一个功能,一个接口可以有一个或多个端点,一个设备最多有16个端点(即0-15),通过端点号区分(也就是 bEndpointAddress端点地址
一个设备必须至少有一个端点0且一定是控制类型的端点。端点0不独立属于任何配置和任何接口,是归属于USB设备
  • 控制端点(Control Endpoint):所有USB设备都必须具有端点0,用于设备枚举、配置设置以及状态查询等控制操作。
  • 中断端点(Interrupt Endpoint):主要用于周期性地发送小量且时间敏感的数据,如键盘、鼠标事件等。
  • 批量端点(Bulk Endpoint):处理大量非实时的数据传输,适合文件传输、打印机作业等应用。
  • 同步端点(Isochronous Endpoint):设计用于连续流式传输,例如音频和视频流,这类数据传输对带宽和定时要求严格。
复合设备(composite device):具有多个接口并由接口来实现功能的设备叫USB复合设备。
显示如下:
其根节点必是通过USB Composite Device(usbccgp.sys)来驱动,其子节点的硬件ID 必带MI_0X,并且所有设备其享一组PID和VID.
USB复合设备的配置描述符 一次获取完整后,再由系统驱动根据其接口功能的不同,而进行逻辑拆分组合,生成逻辑设备。
组合设备(compound device):多个USB通过HUB连接来实现多个功能的设备叫USB组合设备
显示如下:

相关文章:

usb端点笔记

端点:端点是USB设备的唯一可识别部分,其是主机和设备之间的通信流的终点。是一个USB设备或主机上的一个数据缓冲区,用来存放和发送USB的各种数据。(逻辑上) 接口:可以理解为一个功能。(物理功能…...

多智能体协同作战:MagenticOne如何指挥一支AI团队

你有没有想过,如果能让多个AI智能体像高效团队一样协同工作会怎样?每个成员各司其职,却又紧密配合。今天,我们就来聊聊AI世界的"特工组织"——多智能体系统,尤其是最近热门的MagenticOne架构。 &#x1f9e…...

C++静态编译标准库(libgcc、libstdc++)

在使用GCC编译器时,部分版本默认动态加载标准库。如果客户机器上没有安装相应库,就会提示找不到:libgcc_s_seh-1.dll、libstdc-6.dll、libwinpthread-1.dll。 解决方法: 设有动态库libadd.dll、静态库libmul.a 编译命令&#x…...

[PRO_A7] SZ501 FPGA开发板简介

SZ501 FPGA开发板简介 概述 SZ501 FPGA开发板是专为高性能FPGA设计、快速原型开发和复杂应用调试打造的先进开发平台。搭载Xilinx Artix-7系列XC7A100T FPGA芯片,SZ501提供卓越的逻辑运算能力和灵活的接口支持,广泛适用于通信、信号处理、嵌入式系统及…...

URP - 序列图动画的实现

效果: 【太妃糖耶】更新了一条视频,快来围观! 序列图动画的实现 首先先了解下序列图样式的纹理图片 如上图一可在Shader中使用该图片制作燃烧的火的动画,但是如何实现呢?接下来一起来看一下吧 序列图动画的实现原理大…...

Helm部署kong+konga的路由管理系统

部署postgres服务 创建存储类 创建存储类对应的deployment --- apiVersion: apps/v1 kind: Deployment metadata:annotations: {}labels:app: eip-nfs-postgresql-storageclassname: eip-nfs-postgresql-storageclassnamespace: kube-systemresourceVersion: 26709116 spec:…...

液氮恒温器原理解析

一、‌核心降温原理‌ 1、‌液氮媒介作用‌ 液氮恒温器以液氮(沸点约77K/-196℃)为降温媒介,通过液氮蒸发吸收热量的特性实现快速降温。 液氮在内部腔体蒸发时形成气-液界面,利用毛细管路将冷媒导入蒸发器,强化热交换…...

EchoMimic 阿里开源数字人项目的复现过程

EchoMimic 是一个由阿里巴巴蚂蚁集团开发的开源AI 数字人项目,通过可编辑地标调节实现逼真的音频驱动肖像动画,它能够将静态图像转化为具有动态语音和表情的数字人像。 今天咱们来复现下,看看有哪些坑,再看看数字人效果如何。 先…...

iVX 开源战略:多维突破下的产业生态革新与未来图景

在开源技术浪潮席卷全球软件产业的当下,iVX 凭借持续迭代的开源战略,不断突破技术边界,拓展应用场景,重塑产业生态。从底层技术架构的深度优化,到多行业应用场景的全面覆盖;从全球化生态体系的完善构建&…...

数据库12(游标)

游标语法 declare c1 cursor for select title from titles --定义一个游标c1,确定游标对应的列是titles表的title列,游标可以对应多个列 declare bname varchar(50) --声明变量 open c1 --初始化,开始使用游标 fetch next from c1 in…...

Windows11下本地化部署AI开发环境(Dify+Ollama)

前言 本次实践希望在Windows环境下本地化部署AI开发环境,通过Ollama下载运行模型,通过Dify搭建管理AI应用。 硬件环境 AI大模型开发对硬件要求较高,理论上配置越高越好。本次搭建环境如下: Windows系统(Windows11&…...

Oracle Bigfile 与 Smallfile 表空间对比分析

Oracle Bigfile 与 Smallfile 表空间对比分析 一、基本概念对比 特性Bigfile 表空间Smallfile 表空间定义每个表空间只包含一个大数据文件每个表空间可包含多个数据文件引入版本Oracle 10gOracle 传统模式最大文件大小取决于块大小(32TB for 8K块)通常最大32GB(传统限制)文件…...

Cypress/Playwright 跨浏览器测试

以下是关于 Cypress 和 Playwright 跨浏览器测试的基本知识总结: 一、工具核心差异 维度CypressPlaywright浏览器支持Chromium 系为主(需配置支持其他浏览器)原生支持 Chromium/Firefox/WebKit架构设计同进程运行远程协议控制(CDP/WebDriver)执行速度较快(内存运行)快速…...

【Python学习路线】零基础到项目实战

目录 🌟 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 🧠 一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比 💻 二、实战演示环境配置要求核心代码实现运行结果验证 ⚡ 三、性能对比测试方法论量化数据对比…...

26个脑影像工具包合集分享:从预处理到SCI成图

为方便各位脑科学研究者更好地使用优质的开源工具,本期脑海科技实验室汇总了近期整理的脑影像分析软件,希望可以帮助大家。 脑影像分析软件汇总 本次总结脑影像工具包合集(点击本条文字内容跳转) 工具包包括 1、CONN&#xff1…...

C# 高效操作excel文件

C#高效操作Excel文件指南 一、主流Excel处理方案对比 方案类型特点适用场景​​EPPlus​​第三方库功能全面,性能好,支持.xlsx复杂Excel操作,大数据量​​NPOI​​第三方库支持.xls和.xlsx,功能全面兼容旧版Excel文件​​Closed…...

综合案例建模

文章目录 滚花手扭螺丝机箱封盖螺丝螺丝孔锥形垫片 滚花手扭螺丝 前视基准面画草图,旋转生成主体 倒角0.5 顶面,草图转换实体引用,去复制边线 生成螺旋线路径 顶面绘制草图 上一步画的草图沿螺旋线扫描切除 镜像扫描特征 阵列镜像扫描特征 创…...

【蓝桥杯】第十六届蓝桥杯C/C++大学B组个人反思总结

前言 这是我第一次参加蓝桥杯大赛,我将通过一下 4 点来总结我的整个蓝桥杯经历 赛前准备 我大约花了 150h 来备战本次蓝桥杯软件赛,虽然最终的没有取得很好的成绩(省二),但是此次比赛对我来说有着很大的意义。 大二…...

运维仙途 第2章 日志深渊识异常

第2章 日志深渊识异常 情节梗概 凌运维发现混沌钟显示的灵脉波动与藏经阁古籍记载不符。为查明真相,他冒险进入「日志深渊」——青云门历代系统异常的记录之地。在这里,他结识了能同时解读十万条日志的慕监控… 技术映射 graph LR古籍记载 --> 历…...

知识图谱系列(1):基础概念与发展历程

1. 引言与背景介绍 在当今数字化时代,数据呈现爆炸式增长,如何有效地组织、管理和利用这些海量数据成为了一个重要挑战。传统的数据管理方式往往将数据存储在相互隔离的系统中,难以建立数据之间的关联,更难以挖掘数据背后的深层知识和价值。知识图谱作为一种新型的知识表示…...

halcon关闭图形窗口

1、dev_close_window () 调用一次这个函数关闭一个图形窗口,并且先关闭最后打开的那个图形窗口,如果一共打开了N个图形窗口,那么就需要调用dev_close_window N次。...

2025深圳杯东三省数学建模竞赛选题建议+初步分析

完整内容请看文章最下面的推广群 2025深圳杯&东三省数学建模选题建议初步分析 首先吐槽一句,今年为了规避AI对数模竞赛的冲击,深圳杯的整体难度相较往年更高,C君作数模5年见过最难的一次比赛。 提示:C君认为的难度和开放度…...

flutter开发音乐APP(简单的音乐播放demo)

效果如下: 音乐播放界面 锁屏音乐播放展示 主要使用的插件如下 just_audio : 是一个功能丰富的音频播放器,适用于Android、iOS、macOS、Web、Linux和Windows平台。它提供了多种功能,包括从URL、文件、资产或字节流读取音频,支持D…...

day007

文章目录 1. sort 排序1.1 -r,-n1.2 -k 按列比较1.3 练习1.3.1 找出/etc下占用空间最大的前5个内容1.3.2 查看/*下所有目录的大小,并取出最大的5个 2. uniq 去重2.1 uniq与sort统计次数 3. awk4. 日志分析4.1 分析access.log中ip出现的次数并取前5名4.2 分析secure文…...

二进制如何与三生原理实现统一?

AI辅助创作: 一、符号系统的维度统一 ‌二元符号的阴阳元重构‌ 二进制符号0与1在三生原理中被抽象为‌阴元(2)与阳元(3)‌,通过‌小衍数法‌实现自然数域与阴阳域的映射转换。例如旧奇数公式p ‌2n1‌ 与…...

普通IT的股票交易成长史--20250430午

声明:本文章的内容只是自己学习的总结,不构成投资建议。文中观点基本来自yt站Andylee,美股Alpha姐,综合自己的观点得出。感谢他的无私分享。 仓位就是生命,绝对不能满仓!!!&#xf…...

【计算机视觉】目标检测:深度解析MMDetection:OpenMMLab开源目标检测框架实战指南

深度解析MMDetection:OpenMMLab开源目标检测框架实战指南 架构设计与技术亮点系统架构概览核心技术特性 环境配置与安装指南硬件配置建议详细安装步骤环境验证 实战全流程解析1. 数据集准备2. 配置文件定制3. 模型训练与调优4. 模型评估与推理 核心功能扩展1. 自定义…...

《冰雪传奇点卡版》:第二大陆介绍!

一、第二大陆:高阶资源与实力验证的核心战场 1. 准入条件与地图分布 进入门槛: 基础要求:角色需达到四转(需消耗50万元宝完成转生任务),部分地图需额外满足神魔点数(如黑暗之森需神魔全2&#…...

在线服务器都有哪些用途?

在线服务器是指一种能够能够随时进行连接、管理和操作的服务器,可以通过互联网或者是本地网络来为用户提供网络服务,在线服务器可以是物理服务器也可以是虚拟服务器,让用户可以通过远程访问工具来进行管理。 在线服务器在云计算和虚拟化技术中…...

(Go Gin)Gin学习笔记(二):路由配置、基本路由、表单参数、上传单个文件、上传多个文件、浅扒路由原理

1. 路由 gin 框架中采用的路优酷是基于httprouter做的 HttpRouter 是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。 主要特点 显式匹配:与其他路由…...

Java 中的 设计模式详解

一:设计模式概述 (1)概述 (2)分类 创建型 行为型 结构型 二:软件设计模式 2.1 开闭原则 (1)定义 在程序需要进行拓展的时候,不能修改原有代码 使用到接口和抽象类&#x…...

设计模式(构建者模式)

建造者设计模式详解 建造者模式(Builder Pattern)是一种创建型设计模式,它允许我们分步骤创建复杂对象。这种模式特别适合那些需要多个步骤才能构建出来的、有很多配置选项的对象。 为什么需要建造者模式? 想象一下&#xff0c…...

python实战项目67:空气质量在线检测平台js逆向

python实战项目67:空气质量在线检测平台js逆向 一、需求介绍二、完整代码一、需求介绍 项目需求是获取某个城市(以北京市为例)历年(2013年12月至2025年4月)的空气质量数据,字段包括日期、AQI、质量等级、PM2.5、PM10、NO2、CO、SO2等。改网站的网址是“https://www.aqis…...

verilog_testbench技巧

forever语句 forever begin state; end 一直执行state repeat(n) begin state; end 执行state,n次 force语句对双向端口进行输入赋值。 与wait 是边沿触发,wait是电平触发 仿真控制语句与系统任务描述 $stop停止仿真…...

Hadoop 集群基础指令指南

目录 🧩 一、Hadoop 基础服务管理指令 ▶️ 启动 Hadoop ⏹️ 关闭 Hadoop 🧾 查看进程是否正常运行 📁 二、HDFS 常用文件系统指令 🛠️ 三、MapReduce 作业运行指令 📋 四、集群状态监控指令 💡 …...

k8s平台:手动部署Grafana

以下是一个可用于生产环境的 Kubernetes 部署 Grafana 的 YAML 文件。该配置包括 Deployment、Service、ConfigMap 和 PersistentVolumeClaim,确保 Grafana 的高可用性和数据持久化。 Grafana 生产部署 YAML 文件 ☆实操示例 cat grafana-deployment.yaml --- # …...

品牌网站建设与高端网站定制:塑造企业独特形象

在当今数字化时代,企业品牌网站建设、高端网站定制、多语言外贸网站开发以及网站安全运维已成为企业不可或缺的一部分。它们不仅是企业展示形象、推广产品的重要窗口,更是企业实现数字化转型、提升市场竞争力的关键环节。本文将围绕这些主题,…...

canvas动画:点随机运动 距离内自动连接成线 鼠标移动自动吸附附近的点

思路/实现步骤 创建canvas元素 获取canvas的上下文ctx 初始化点的信息(数量、初始坐标、移动方向、移动速度、大小、颜色) 绘制点 绘制点之间的连线 点有规律的动起来 动画循环 鼠标移动相关逻辑 点鼠标之间连线 鼠标吸附逻辑 添加配置项 重绘…...

算法竞赛进阶指南.沙漠之王

目录 题目算法标签: 01 01 01分数规划, 最小生成树思路代码 题目 348. 沙漠之王 算法标签: 01 01 01分数规划, 最小生成树 思路 看题目有要求是构建的渠道的总长度和总成本的比值最小, 形式化的表示 k ∑ L ∑ S k \frac {\sum L}{\sum S} k∑S∑L​ 可以转化为 k ⋅…...

第四章:走向共产主义社会

第四章:走向共产主义社会 1. 全球无阶级社会的形成 随着生产力的高度发展和社会资源的极大丰富,资本主义的最后残余彻底消失。全球范围内实现了按需分配的社会制度,所有国家都废除了货币体系和私有财产制度,进入了真正的共产主义…...

K8S - HPA + 探针实战 - 实现弹性扩缩与自愈

引言 在分布式系统中,弹性扩缩容与 服务自愈是保障业务高可用的核心能力。Kubernetes 通过自动化机制实现两大关键功能: • 动态扩缩容:基于 CPU/内存负载自动调整 Pod 副本数量,应对流量波动。 • 故障自愈:通过健…...

永磁同步电机控制算法--线性ADRC转速环控制器(一阶、二阶)

一、原理介绍 搭建一阶、二阶线性ADRC转速环控制器,通常一阶ADRC包括一阶LTD、二阶LESO、LSEF,二阶ADRC包括二阶LTD、三阶LESO、LSEF。 原理部分参考了这篇知乎自抗扰控制-ADRC - 知乎。 二、仿真验证 在MATLAB/simulink里面验证所提算法&#xff0c…...

泰迪杯特等奖案例学习资料:基于多模态数据融合与边缘计算的工业设备健康监测与预测性维护系统

(第十三届泰迪杯数据挖掘挑战赛特等奖案例解析) 一、案例背景与核心挑战 1.1 应用场景与行业痛点 在智能制造领域,工业设备(如数控机床、风力发电机)的健康状态直接影响生产效率和运维成本。传统维护方式存在以下问题: 故障响应滞后:依赖定期检修,突发故障导致停机损…...

4.29[Q]NLP-Exp2

我正在完成自然语言处理作业,?阅读文档,详细解释,越细节越好 class TextCNN(object): def __init__(self, config): self.config config self.preprocessor Preprocessor(config) self.class_name {0: 负面, 1: 正面} def buil…...

前端开发 Markdown 编辑器与富文本编辑器详解

一、现有开源项目分析 1. Markdown 编辑器 项目名称 技术栈 核心特性 适用场景 Editor.md JavaScript/Node.js 支持 GFM、代码块、流程图、数学公式,兼容 IE8,提供主题切换功能 技术博客、网页站、在线文档 Bytemd Svelte/Vue/Re…...

GCC-C语言“自定义段”

一、起因 事情的起因是这样的,在看别人代码时,发现了一种很有意思的写法,因为本人主要是以应用层开发为主,所以对这种写法还是比较少见的,所以研究了一下,就牵扯出了一些知识点,这里先卖个关子,继续往下看。 二、经过 发现了一串这样的代码 static void do_mac(mcmd_…...

2025年4月个人工作生活总结

本文为 2025年4月工作生活总结。 研发编码 一个项目的临时记录 自2月份领导让我牵头负责一个项目起,在本月算是有较多时间投入——但也是与之前的相比。 月初,清明节前一晚上,因某事务被叫上参加临时紧急远程会议,几方领导都在…...

B/S架构:定义、原理及其在软件测试中的应用

引言 在当今互联网时代,B/S架构已成为软件开发的主流模式之一。作为软件测试工程师,深入理解B/S架构的定义和工作原理,对于设计有效的测试策略至关重要。本文将全面解析B/S架构,并探讨其在软件测试中的特殊考量。 一、B/S架构的…...

【Android】文件导出到本地或者U盘

项目需求 在使用Android 9平板开发的时候,项目更新了一个新的需求,现在需要检测设备是否插入U盘,如果没有U盘的话,就将文件导出到系统根目录,如果有U盘的话,就将文件导出到U盘里面。 项目实现 1.实现文件…...

在Electron中爬取CSDN首页的文章信息

背景 之前分享了Electron入门的相关文章:https://gitee.com/ruirui-study/electron-demo 后来,我就想在里面多做一些演示给大家看,集成了以下功能及演示: 窗口管理、各种方法封装托盘管理菜单管理获取屏幕演示多窗口及通信演示…...