|
楼主 |
发表于 2011-4-14 21:03:06
|
显示全部楼层
*******************************
USB 枚举串口信息输出演示
By zidong404 2011-4
*******************************
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x01 0x00 0x00 0x40 0x00
有数据的建立过程: 0x0040
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->设备描述符(18字节)
设备返回: 0x0012个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0012个数据
0x12 0x01 0x00 0x02 0x00 0x00 0x00 0x40 0x83 0x04 0x20 0x57 0x00 0x02 0x01 0x02
0x03 0x01
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x00 0x05 0x02 0x00 0x00 0x00 0x00 0x00
无数据的建立过程
标准请求->设备请求设置地址
IN0中断-->IN状态过程
设置设备地址: 0x02
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00
有数据的建立过程: 0x0012
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->设备描述符(18字节)
设备返回: 0x0012个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0012个数据
0x12 0x01 0x00 0x02 0x00 0x00 0x00 0x40 0x83 0x04 0x20 0x57 0x00 0x02 0x01 0x02
0x03 0x01
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x02 0x00 0x00 0x09 0x00
有数据的建立过程: 0x0009
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->配置描述符(9字节+(接口)9*x +(端点)7*x)
设备返回: 0x0009个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0009个数据
0x09 0x02 0x20 0x00 0x01 0x01 0x00 0xC0 0x32
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x03 0x00 0x00 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x00
设备返回: 0x0004个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0004个数据
0x04 0x03 0x09 0x04
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x03 0x03 0x09 0x04 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x03
设备返回: 0x001A个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x001A个数据
0x1A 0x03 0x43 0x00 0x41 0x00 0x37 0x00 0x41 0x00 0x37 0x00 0x46 0x00 0x34 0x00
0x37 0x00 0x33 0x00 0x38 0x00 0x33 0x00 0x30 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x02 0x00 0x00 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->配置描述符(9字节+(接口)9*x +(端点)7*x)
设备返回: 0x0020个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0020个数据
0x09 0x02 0x20 0x00 0x01 0x01 0x00 0xC0 0x32 0x09 0x04 0x00 0x00 0x02 0x08 0x06
0x50 0x04 0x07 0x05 0x81 0x02 0x40 0x00 0x00 0x07 0x05 0x02 0x02 0x40 0x00 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x06 0x00 0x00 0x0A 0x00
有数据的建立过程: 0x000A
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->非标准请求
-----由用户提供回调函数实现-----(类请求或厂商请求,返回如报告描述,HID描述符)
Unsupported request,STALLED->函数返回
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x03 0x00 0x00 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x00
设备返回: 0x0004个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0004个数据
0x04 0x03 0x09 0x04
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x02 0x03 0x09 0x04 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x02
设备返回: 0x0026个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0026个数据
0x26 0x03 0x53 0x00 0x54 0x00 0x4D 0x00 0x33 0x00 0x32 0x00 0x20 0x00 0x4D 0x00
0x61 0x00 0x73 0x00 0x73 0x00 0x20 0x00 0x53 0x00 0x74 0x00 0x6F 0x00 0x72 0x00
0x61 0x00 0x67 0x00 0x65 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x03 0x00 0x00 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x00
设备返回: 0x0004个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0004个数据
0x04 0x03 0x09 0x04
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x02 0x03 0x09 0x04 0xFF 0x00
有数据的建立过程: 0x00FF
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x02
设备返回: 0x0026个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0026个数据
0x26 0x03 0x53 0x00 0x54 0x00 0x4D 0x00 0x33 0x00 0x32 0x00 0x20 0x00 0x4D 0x00
0x61 0x00 0x73 0x00 0x73 0x00 0x20 0x00 0x53 0x00 0x74 0x00 0x6F 0x00 0x72 0x00
0x61 0x00 0x67 0x00 0x65 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00
有数据的建立过程: 0x0012
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->设备描述符(18字节)
设备返回: 0x0012个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0012个数据
0x12 0x01 0x00 0x02 0x00 0x00 0x00 0x40 0x83 0x04 0x20 0x57 0x00 0x02 0x01 0x02
0x03 0x01
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x02 0x00 0x00 0x09 0x00
有数据的建立过程: 0x0009
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->配置描述符(9字节+(接口)9*x +(端点)7*x)
设备返回: 0x0009个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0009个数据
0x09 0x02 0x20 0x00 0x01 0x01 0x00 0xC0 0x32
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x02 0x00 0x00 0x20 0x00
有数据的建立过程: 0x0020
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->配置描述符(9字节+(接口)9*x +(端点)7*x)
设备返回: 0x0020个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0020个数据
0x09 0x02 0x20 0x00 0x01 0x01 0x00 0xC0 0x32 0x09 0x04 0x00 0x00 0x02 0x08 0x06
0x50 0x04 0x07 0x05 0x81 0x02 0x40 0x00 0x00 0x07 0x05 0x02 0x02 0x40 0x00 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x03 0x00 0x00 0x02 0x00
有数据的建立过程: 0x0002
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x00
设备返回: 0x0002个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0002个数据
0x04 0x03
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x00 0x03 0x00 0x00 0x04 0x00
有数据的建立过程: 0x0004
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x00
设备返回: 0x0004个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0004个数据
0x04 0x03 0x09 0x04
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x03 0x03 0x09 0x04 0x02 0x00
有数据的建立过程: 0x0002
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x03
设备返回: 0x0002个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0002个数据
0x1A 0x03
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x80 0x06 0x03 0x03 0x09 0x04 0x1A 0x00
有数据的建立过程: 0x001A
获取描述符(0x06)(1设备;2配置;3字符;4接口;5端点):
->设备->字符串描述符
->0语言ID,1厂商字符串,2产品字符串,3产品序列号--> 0x03
设备返回: 0x001A个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x001A个数据
0x1A 0x03 0x43 0x00 0x41 0x00 0x37 0x00 0x41 0x00 0x37 0x00 0x46 0x00 0x34 0x00
0x37 0x00 0x33 0x00 0x38 0x00 0x33 0x00 0x30 0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x00 0x09 0x01 0x00 0x00 0x00 0x00 0x00
无数据的建立过程
标准请求->设备->设置配置
-------调用用户回调函数,通常赋值bDeviceState = CONFIGURED--------
IN0中断-->IN状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0xA1 0xFE 0x00 0x00 0x00 0x00 0x01 0x00
有数据的建立过程: 0x0001
->非标准请求
-----由用户提供回调函数实现-----(类请求或厂商请求,返回如报告描述,HID描述符)
设备返回: 0x0001个数据
设备正在返回数据->DataStageIn()...
本次传输返回: 0x0001个数据
0x00
IN0中断-->In数据过程
IN数据过程完成,即将进入Out状态过程
Out0中断-->Out状态过程
Setup0 中断-->建立过程
设备可以接收新的数据
设备接收数据如下:
0x02 0x01 0x00 0x00 0x81 0x00 0x00 0x00
无数据的建立过程
标准请求->EndPoint->清除Feature
-----------调用用户回调函数------------
IN0中断-->IN状态过程
-----------------------------------------
USB设备枚举完成
-----------------------------------------
----------------------------------------------------------------------
楼主位少了一个资料,关于工程的简要说明在这个文档里面:
点击此处下载 ourdev_630748DAMFEC.pdf(文件大小:511K) (原文件名:STM32 OV7670 开发套件.pdf) |
|