📄 descriptor.c
字号:
/**************************************** Copyright (c) **************************************************
** Guangzhou ZLG-MCU Development Co.,LTD.
** graduate school
** http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name: D13HAL.c
** Last modified Date: 2004-12-10
** Last Version: V1.0
** Descriptions: USB驱动程序软件包: ISP1181B(D13) 设备端驱动程序 ---- 描述符文件
** Soft Packet of USB Driver: the Driver of Device of ISP1181B(D13)
the Files of Descriptor
**------------------------------------------------------------------------------------------------------
** Created by:
** Created date:
** Version:
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
** Modified by: Ming Yuan Zheng
** Modified date: 2004-12-10
** Version: V1.0
** Descriptions: The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
********************************************************************************************************/
#include "config.h"
#include "D13Config.h"
#include "Descriptor.h"
/* 设备描述符: 测试设备类型 */
#define USB_CLASS_CODE_TEST_CLASS_DEVICE 0xdc
/* 接口描述符: 子类代码 */
#define USB_SUBCLASS_CODE_TEST_CLASS_D13 0xA0
/* 接口描述符: 协议代码 */
#define USB_PROTOCOL_CODE_TEST_CLASS_D13 0xB0
//设备描述符
const USB_DEVICE_DESCRIPTOR DeviceDescr =
{
sizeof(USB_DEVICE_DESCRIPTOR), //设备描述符长度,= 12H
USB_DEVICE_DESCRIPTOR_TYPE, //设备描述符类型,= 01H
0x10,0x01, //协议版本,= 1.10
USB_CLASS_CODE_TEST_CLASS_DEVICE, //测试设备类型, = 0DCH
0, 0, //设备子类,设备协议
EP0_PACKET_SIZE, //端点0最大数据包大小,= 10H
0x71,0x04, //PHILIPS公司的设备ID
0x68,0x01, //设备制造商定的产品ID
0x00,0x01, //设备系列号
0, 0, 0, //索引
1 //可能的配置数
};
const USB_DESCRIPTOR usb_descr =
{
//配置描述符
{
sizeof(USB_CONFIGURATION_DESCRIPTOR), //配置描述符长度,= 09H
USB_CONFIGURATION_DESCRIPTOR_TYPE, //配置描述符类型,= 02H
CONFIG_DESCRIPTOR_LENGTH,0x00, //描述符总长度, = 002EH
1, //只支持1个接口
1, //配置值
0, //字符串描述符指针(无)
0x60, //自供电,支持远程唤醒
0x32 //最大功耗(100mA)
},
//接口描述符
{
sizeof(USB_INTERFACE_DESCRIPTOR), //接口描述符长度,= 09H
USB_INTERFACE_DESCRIPTOR_TYPE, //接口描述符类型,= 04H
0, //接口数,只有1个
0, //可选配置,只有1个
NUM_ENDPOINTS, //除端点0的端点索引数目,= 04H
USB_CLASS_CODE_TEST_CLASS_DEVICE, //测试设备类型,= 0DCH
USB_SUBCLASS_CODE_TEST_CLASS_D13, //子类代码,= 0A0H
USB_PROTOCOL_CODE_TEST_CLASS_D13, //协议代码,= 0B0H
0 //字符串描述符索引
},
//端点描述符,端点1(输入IN)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x81, //端点1 IN
USB_ENDPOINT_TYPE_INTERRUPT, //中断传输, = 03H
EP1_TX_FIFO_SIZE,0x00, //端点最大包的大小,= 0010H
1 //传输间隔时间,= 1ms
},
//端点描述符,端点2(输出OUT)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x02, //端点2 OUT
USB_ENDPOINT_TYPE_INTERRUPT, //中断传输,= 03H
EP2_RX_FIFO_SIZE,0x00, //端点最大包的大小,= 0010H
1 //传输间隔时间,= 1ms
},
//端点描述符,端点3(输入IN)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x83, //端点3 IN
USB_ENDPOINT_TYPE_BULK, //批量传输,= 02H
EP3_TX_FIFO_SIZE,0x00, //端点最大包的大小,= 0040H
10 //批量传输时该设备无效
},
//端点描述符,端点4(输出OUT)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x04, //端点4 OUT
USB_ENDPOINT_TYPE_BULK, //批量传输,= 02H
EP4_RX_FIFO_SIZE,0x00, //端点最大包的大小,= 0040H
10 //批量传输时该设备无效
},
//端点描述符,端点5(输入IN)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x85, //端点5 IN
USB_ENDPOINT_TYPE_BULK, //批量传输,= 02H
EP5_TX_FIFO_SIZE,0x00, //端点最大包的大小,= 0040H
10 //批量传输时该设备无效
},
//端点描述符,端点6(输出OUT)
{
sizeof(USB_ENDPOINT_DESCRIPTOR), //端点描述符长度,= 07H
USB_ENDPOINT_DESCRIPTOR_TYPE, //端点描述符类型,= 05H
0x06, //端点6 OUT
USB_ENDPOINT_TYPE_BULK, //批量传输,= 02H
EP6_RX_FIFO_SIZE,0x00, //端点最大包的大小,= 0040H
10 //批量传输时该设备无效
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -