USB协议深入分析 配置

发布者:WhisperingWind最新更新时间:2015-08-14 来源: eefocus关键字:USB协议  配置 手机看文章 扫描二维码
随时随地手机看文章
前面已经介绍设置USB的设备地址,接着下来是做什么呢?其实有了设备地址后,主控器还会再次发送获取上面已经读取的设备描述符下来,如下:
80 06 00 01 00 00 12 00
然后USB设备也再次回应它,但这次发送的长度是0x0012了,不再是第一次64个字节长度了。
接着USB设备就返回下面的描述符给主控器,也就是第一次已经发送的设备描述符,如下:
12 01 10 01 00 00 00 40 00 80 00 80 00 01 04 2C 4A 01
 
这样分配地址之后,再次获取设备描述符成功了,接着下来就是主控器获取配置描述符。下面就是收到的配置描述符数据:
80 06 00 02 00 00 09 00
分析上面的数据如下:
bmRequestType是80,表示方向USB设备发送给主控器,接收设备是USB设备。
bRequest是06,表示这是获取描述符。GET_DESCRIPTOR         6
wValue是00 02。低字节表示偏移地址00,高字节表示描述符的类型。如下:
CONFIGURATION          2
所以这里的返回的设备描述符是配置描述符。
wIndex是00 00。
wLength是09 00。它表示返回描述符的长度。这里是9个字节。
接着下来,就是设备返回配置描述符给主控器,发送的数据如下:
09 02 22 00 01 01 00 01 32
发送的数据是按下面的结构来定义,这也是在USB协议里定义的格式。如下:
typedef struct _USB_CONFIGURATION_DESCRIPTOR {
 BYTE bLength;
 BYTE bDescriptorType;
 WORD wTotalLength;
 BYTE bNumInterfaces;
 BYTE bConfigurationValue;
 BYTE iConfiguration;
 BYTE bmAttributes;
 BYTE MaxPower;
USB_CONFIGURATION_DESCRIPTOR;
 
bLength是配置的长度,也就是配置结构的整个长度。在这里9个字节。
bDescriptorType是描述符的类型,这里配置描述符,所以设置为02。
wTotalLength是所有配置设置的结构长度。包括配置描述符、接口描述符、HID或者其它描述符和端点描述符的长度。这里是22 00,也就是0x0022个字节。
bNumInterfaces是接口个数,这里一个。
bConfigurationValue是配置的个数,当设置配置时发送的值。这时设置为1个配置。
iConfiguration是说明配置的字符的偏移值。这里是0。
bmAttributes是配置特性,D7位保留。D6位是说明是否自供电。D5位是否支持远程唤醒。D4—D0是保留,设置为0。
MaxPower是使用的功率,它采用电流来表示。每2mA为单位,比如它的值是50时就表示是100mA的电流消耗。
通过这样说明,主控器就知道这个设备是什么样的设备,有多少功能。
关键字:USB协议  配置 引用地址:USB协议深入分析 配置

上一篇:USB协议深入分析 设置USB地址
下一篇:USB协议深入分析 字符串描述符

推荐阅读最新更新时间:2024-03-16 14:28

Keil5软件配置与新建STM32工程的步骤
新建工程文件夹 建立名字为LED的文件夹存放工程文件,其中再建立两个文件夹,Listing文件夹用于存放编译器编译时候产生的C语言、汇编、链接文件,Output文件夹用于存放编译产生的调试信息、hex文件、预览信息、封装库等。 文件夹建好之后,在LED文件夹下存放startup_stm32f10x_hd.s、stm32f10x.h、main.c文件。前两个文件可以在STM32F1xx的固件库中找到,第三个文件是空文件。 在Keil5中新建工程的步骤 如下图所示,Project-New,新建工程,工程名为Led,点击保存。 点击保存之后,弹出如下窗口,选择芯片型号。根据你开发板使用的芯片具体的型号来选择。如果这里没有出现你
[单片机]
汽车行驶记录仪的数据传输设计
记录仪上记录的数据是管理和事故分析的关键资料,如果数据采集方式不科学,传输不方便,那么对汽车行驶记录仪产品,甚至整个汽车行驶记录仪行业而言无疑是沉重的打击。 本文就是在对汽车行驶记录仪的多种数据传输方式进行深入了解、探讨和研究后,提出了行之有效的新思路,解决了上述问题。 数据传输方案设计 汽车行驶记录仪国家标准中对数据作如下描述:“记录仪应同时配置以下两种标准接口;1.USB(通用串行总线)标准接口,建议采用主结构式USB接口;2.标准RS232CD型9针接口。在具备上述通信接口的基础上,本标准不排除同时使用其他通信方式的可能性。” 针对以上要求,可以采用如下几种数据传输的方案。 采用串行口的数据传输方式,通过RS232
[应用]
AVR单片机熔丝位的配置操作及相关解决措施
用户使用并行编程方式、ISP编程方式、JTAG编程方式都可以对AVR的熔丝位进行配置,但不同的编程工具软件提供对熔丝位的配置方式(指人机界面)也是不同的。有的是通过直接填写熔丝位位值(如:CVAVR、PonyProg2000和SLISP等),有的是通过列出表格选择(如AVR STUDIO、BASCOM-AVR)。前者程序界面比较简单,但是需要用户在仔细查询操作,会引起一些意想不到的后果,如造成芯片无法正常运行,无法再次定入ISP编程模式等。建议用户对AVR的熔丝位进行配置时,选择用户表格选择方式界面的编程软件,如BASCOM-AVR。不过版主使用的是前者PonyProg2000。 对AVR熔丝位的配置操作是比较细致的工作,用户往往
[单片机]
AVR单片机熔丝位的<font color='red'>配置</font>操作及相关解决措施
关于飞思卡尔S12系列单片机SPI通信MODRR配置
MODRR为模块路径选择寄存器,作为CAN0/4与SPI0/1/2映射引脚。 例如选择CAN0为PM0/1引脚,则配置MODRR_MODRR0&1=0.当MODRR_MODRR4=0时,SPI0选择PS4/5/6/7.
[单片机]
关于飞思卡尔S12系列单片机SPI通信MODRR<font color='red'>配置</font>
STM32F7系统配置控制器(SYSCFG)及复位和时钟控制(RCC)
这篇文章带大家看一下 STM32F7的系统配置控制器 。系统配置控制器主要用于: 1、 选择以太网PHY接口; 2、 交换FMC SDRAM存储区域与NOR/PSRAM存储区域; 3、 管理GPIO外部中断线连接; 在系统控制寄存器里有一个bit位来选择使用哪个选项字定义的启动基地址来启动。 复位类型 一共有三种复位类型,系统复位、电源复位和备份域复位。 系统复位在VDD保持正常工作电压的前提下,有五种事件可以产生复位,分别是低功耗管理复位、软件复位、独立看门狗计数器溢出、窗口看门狗计数器溢出和NRST引脚上的低电平。这里低功耗管理复位指的是MCU执行低功耗模式进入序列的时候是产生复位还是停止待机模式,这个是可以通过选
[单片机]
配置强悍,造型时尚,售价12万起
新车刚刚上市,订单就破万,12万多的起步价,火爆程度超哈弗h6! 新逍客在外观设计上显得饱满不单薄,更积极健康,给人以一种宽大扁平的视觉感受,虽然与新奇骏相比,有着很多相似之处,但新逍客更趋向年轻化、时尚化,而奇骏更多的偏向中庸稳重。 全新逍客在外观上,一改往日中庸的规划,变得愈加时尚动感,獠牙式的前唇带来了强烈的前卫感,侧窗外型的规划对比张扬,车尾的外型在夜间作用十分超卓,行驶在车流中肯定是吸眼利器,视觉作用是极具运动气味的,双腰线的车身规划,视觉上有种紧促感但也让你觉得有力气,尺度上,车身长4384MM,车宽1837MM,轴距2646MM。 车尾变化同样不大,只是采用了新的尾灯样式设计,尾灯示宽灯及刹车灯采用了光带
[汽车电子]
小米平板5配置曝光:骁龙870处理器 价格3999元起
曾以为小米已经放弃了平板电脑市场,因为它已经两年多没有更新产品线了。上一款机型小米平板 4 于 2018 年 6 月发布,销量并不令人印象深刻。 然而,小米集团的徐洁云最近发表声明,他公开透露,沉寂已久的小米平板电脑产品今年将迎来更新,并将带来基于平板电脑产品研发的 MIUI 系统。 近日,小米平板 5 的渲染和配置已经出现在网上。在后面突出的是双摄镜头,它类似于小米 11 的设计风格。 在规格方面,该设备据称正面采用 2K/144Hz 全面屏解决方案,支持 480Hz 触摸采样率。显示屏是 LCD 屏,还将覆盖第五代康宁大猩猩玻璃。 背面则采用多摄像头模块,配备 2000 万像素主摄像头和 1300 万广角微距镜
[手机便携]
STM32配置时钟时注意设置FLASH等待周期
兴致勃勃地把复位及时钟控制(RCC)的寄存器定义写完了,没得午觉睡倒算了,还累得满头大汗 看来这事有点吃力不讨好,真想用别人现成的头文件算了,最后还是咬咬牙自己写吧,至少可以让自己对寄存器结构熟悉一些。 傍晚回来再写个测试程序,满以为一次就OK的,可是调试时却发现,运行到选择PLL时钟后程序就跑飞 顿时就傻眼了 检查各个寄存器配置,似乎没什么问题啊:选择外部8M时钟,不分频输入到PLL,设置PLL为9倍频(注意实际写入到寄存器中为7),AHB、ABP2不分频,ABP1为2分频(注意设置为8才是2分频),都没有超过最大频率啊。看来想要搞个72M的主频遇到麻烦了 试着将倍频降下来,当主频为48M时,系统可以正常工作了,莫
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved