首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

USB设备状态

USB设备插上主机时,主机就通过一系列动作来对设备进行枚举配置(配置是属于枚举一个态,态表示暂时状态),这些态如下: 1、接入态(Attached):设备接入主机后,主机通过检测信号线上电平变化来发现设备接入...; 2、供电态(Powered):就是给设备供电,分为设备接入时默认供电值,配置阶段后供电值(按数据中要求最大值,可通过编程设置); 3、缺省态(Default):USB在被配置之前,通过缺省地址...0与主机进行通信; 4、地址态(Address):经过了配置,USB设备被复位后,就可以按主机分配给它唯一地址来与主机通信,这种状态就是地址态; 5、配置态(Configured):通过各种标准USB...请求命令来获取设备各种信息,并对设备某此信息进行改变或设置; 6、挂起态(Suspended):USB总线处于空闲状态的话,该设备就要自动进入挂起状态,在进入挂起状态后,总电流功耗不超过280UA...下表汇集这些外置设备状态之间转化关系: 连接 加电 缺省 编址 配置 挂起 说 明 不 __ __ __ __ __ __ __ __ __ __ 设备尚未连接至接口.其他特性无关 是 不 __

1.7K20

Linux USB 设备驱动模型

BUS/DEV/DRV 模型 "USB 接口"是逻辑上 USB 设备,编写 usb_driver 驱动程序,支持是"USB 接口": USB 控制器或 Hub 识别出 USB 设备后,会创建、...左边 usb_driver 和右边 usb_interface 如果匹配,则调用 usb_driver.probe 2....接口函数 在 USB 设备驱动程序中,能使用 USB 函数都在这个头文件里:include\linux\usb.h。...2.1 pipe 使用这些接口函数主要目的是传输数据,传输数据对象是 USB 设备某个 endpoint,这被称为 pipe: /* Create various pipes... */ #define...:USB 控制器先把数据传到 DMA Buffer,函数内部在把 DMA Buffer 数据复制到一般 buffer 中间增加了一次数据拷贝,效率低 我们可以直接使用 DMA Buffer,函数原型如下

58840
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    USB总线-Linux内核USB3.0设备控制器复合设备USB gadget configfs分析(七)

    早期USB只支持单一gadget设备,使用场景较为简单,随后加入了composite framework,用来支持多个functiongadget设备,多个function绑定在内核中完成,若需要修改...usb gadget configfs重新实现了复合设备层,使用者可以在用户空间配置和组合内核function,灵活构成USB复合设备,极大了提高了工作效率。...主要工作流程为: 分配一个config_usb_cfg1结构体,该结构体包含了usb_configuration结构体,保存了该USB设备配置信息。 设置USB设备配置描述符某些选项。...USB gadget configfs提供了一个便捷配置方法,用户可以灵活组织USB function驱动,以组成不同功能USB设备复合设备,当配置完成后,USB gadget configfs并不参与...USB设备复合设备工作过程。

    10.2K20

    第4章_USB 设备编程

    USB 设备 USB 口内部, D-或 D+接有 1.5K 上拉电阻;它一接入 PC,就会把 PC USB D-或 D+拉高,从硬件角度通知 PC 有新设备接入。 问 4....USB 设备就必须回答"我是 xxx", 并且回答格式是固定USB 总线驱动程序会 发出某些命令想获取设备信息(描述符),USB 设备必须返回"描述符"给 PC。 问 5....端点描述符 5.示例 在 Ubuntu 中可以执行 lsusb -v查看 USB 设备描述符信息: book@100ask:~$ sudo lsusb -v [sudo] password for book...它允许使用具有多种配置 USB 设备、复合设备USB OTG 进行操作。它支持 USB 电源管理。 USBX 为 USB 主机和 USB 设备堆栈提供了大量 USB 类。...4.7.8 上机实验 烧写运行程序后,接上 USB 线,在电脑上可以识别出 USB 串口,查看设备管理器,可 以看到如下设备: 使用串口工具打开这个串口, 可以连续不断接收到数据,如下所示: 在串口工具上发送数据时

    18910

    C# 获得设备usb信息

    本文告诉大家如何获得设备usb来进行判断是否有哪些usb和找不到usb可能是什么。...需要在项目右击引用,点击程序集,搜索 System.Management 然后安装他 然后使用下面的代码就可以获得设备 usb 请看代码 static List<(string DeviceID...} collection.Dispose(); return devices; } 如果需要判断是否存在某个 usb...,就通过 pid vid 判断,判断方法是拿PNPDeviceID字符串比较 参见:c# 获取移动硬盘信息、监听移动设备弹出与插入事件 - Chris Cheung - 博客园 如果发现找不到 usb...,可能是在开机时候进行找usb,一般需要开机之后很久才会把所有的设备添加,所以如果找不到,就看开机时间,如果太短,那么可能是因为程序太快去查。

    2.1K30

    在Linux中查看进程占用端口号

    套接字是和 IP 地址、软件端口和协议结合起来使用,而端口号对传输控制协议(TCP)和用户数据报协议(UDP)协议都适用,TCP 和 UDP 都可以使用 0 到 65535 之间端口号进行通信。...文件可以查看到更多关于保留端口信息。...24 - private mail system lmtp 24/tcp # LMTP Mail Delivery lmtp 24/udp # LMTP Mail Delivery 可以使用以下六种方法查看端口信息...systemctl:是 systemd 系统控制管理器和服务管理器。 以下我们将找出 sshd 守护进程所使用端口号。 方法 1:使用 ss 命令 ss 一般用于转储套接字统计信息。...:40 vps.2daygeek.com sshd[23909]: Connection closed by 95.210.113.142 port 51666 [preauth] 大部分情况下,以上输出不会显示进程实际端口号

    36.8K20

    Linux USB 设备基础理论

    通过扫描以下目录获取物理节点所有 USB 设备: /sys/bus/usb/devices/usb* /sys/bus/usb/devices/usb*/$busnum-* 从该文件系统收集某一个设备主要信息如下...(该总线第几台设备) speed: 速率 bDeviceClass: 设备类型 idVendor: 设备生产商ID,由USB设备生产商向USB-IF官方来统一管理和申请 idProduct: 该生产商生产产品编号...,同一厂商下不同idProduct代表着该公司不同产品系列 product: 制造商 manufacturer: 产品 serial: USB 硬件设备序列号 ,例如 0000:00:01.2 定位方法...参考文献# USB设备类bDeviceClass、bDeviceSubClass、bDeviceProtocol By USB 中文网 USB设备描述符中idVendor、idProduct和bcdDevice...By USB 中文网 USB 硬件设备序列号 By IBM 注:本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

    40130

    C# 获得设备usb信息

    本文告诉大家如何获得设备usb来进行判断是否有哪些usb和找不到usb可能是什么。...需要在项目右击引用,点击程序集,搜索 System.Management 然后安装他 然后使用下面的代码就可以获得设备 usb 请看代码 static List<(string DeviceID...} collection.Dispose(); return devices; } 如果需要判断是否存在某个 usb...,就通过 pid vid 判断,判断方法是拿PNPDeviceID字符串比较 参见:c# 获取移动硬盘信息、监听移动设备弹出与插入事件 - Chris Cheung - 博客园 如果发现找不到 usb...,可能是在开机时候进行找usb,一般需要开机之后很久才会把所有的设备添加,所以如果找不到,就看开机时间,如果太短,那么可能是因为程序太快去查。

    2.1K10

    网络安全周 - USB 设备

    一、引言随着计算机技术飞速发展,USB 设备因其便捷性而被广泛应用。然而,这也为恶意攻击者提供了可乘之机。...近年来,出现了利用特制 USB 设备,如特制鼠标,通过 Windows 系统漏洞来自动修改系统配置安全事件,给用户和企业带来了严重潜在风险。...三、特制鼠标利用漏洞原理(一)硬件与软件交互漏洞Windows 系统在处理 USB 设备连接和通信时,存在某些可被利用交互漏洞。...(二)USB 设备管理实施严格 USB 设备接入政策,只允许经过授权设备接入。(三)安装安全防护软件实时监测系统异常行为,拦截可疑 USB 设备操作。...(四)用户安全意识培训提高用户对陌生 USB 设备警惕性,不随意接入来源不明设备

    10310

    USB干扰无线蓝牙设备整改案例

    环境 下图是系统工作框图,USB3.0外设通过USB线缆与电能连接,USB线缆会辐射出干扰,这个干扰被PC无线设备接受后产生噪音。...下图是测试环境,近场探头放置在USB设备(硬盘)附近,近场探头采集到干扰被前置放大后由频谱仪来对干扰进行分析。...下图是分析结果,灰色曲线是没有USB设备连接时情况,红色曲线是连接USB设备之后情况,可以看到没有USB连接时噪声水平大约只有-118dB,而USB设备连接后在2.4GHz附近噪声水平达到了-100dB...下面对USB设备硬盘进行包铜箔处理,如下图所示,一共进行了4种程度包铜处理,从case1到case4,包越来越严实,如果缝隙大的话还是有干扰会漏出来。...结果 下图是包铜箔后测量结果,整体可以看到包越严密干扰越小,降低了近12dB。 为了进一步降低干扰,又对连接器进行了屏蔽,下图是屏蔽之后结果,灰色曲线是没有USB设备连接情况,噪声水平最低。

    2.4K40

    Linux查看进程占用端口号_windows查看进程占用端口

    查看linux端口被哪个进程占用方法:首先查看被占用端口进程,并查询进程id;然后根据集成id查询进程,并查看进程详情信息;最后查看进行所在目录,操作进程即可。...查看linux端口被哪个进程占用方法: 1、查询被占用端口。首先是需要输入命令,查看被占用端口进程,netstat -tunpl |grep 端口号 2、查询进程id。...如果想详细查看这个进程,ID具体是哪一个进程,可以通过命令方式进行查看进程详细信息,ps -ef|grep 进程ID 4、查看进程详情信息。...通过执行上面的命令,就可以看到这个进程详细信息,同时也可以看到这个进程存在目录,进程执行文件等信息, 5、查看进行所在目录。...通过ll /proc/进程ID/cwd 命令,可以直接查看进程所在目录,这样的话就可以快速定位到进程目录, 7、操作进程。

    62.5K20

    linux查看3306端口号是否打开

    linux查看3306端口号是否打开 在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口具体进程和用户,可以通过netstat命令进行简单查询。...命令各个参数说明如下:   -t : 指明显示TCP端口   -u : 指明显示UDP端口   -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料程序...-n : 不进行DNS轮询,显示IP(可以加速操作) 即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况·· netstat -ntlp   //查看当前所有tcp端口...netstat -ntulp |grep 80   //查看所有80端口使用情况 netstat -an | grep 3306   //查看所有3306端口使用情况 希望能对大家有所帮助

    26.2K30
    领券