📄 chap_9.lst
字号:
C51 COMPILER V8.01 CHAP_9 04/24/2006 19:23:08 PAGE 1
C51 COMPILER V8.01, COMPILATION OF MODULE CHAP_9
OBJECT MODULE PLACED IN CHAP_9.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE CHAP_9.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /*
2 //************************************************************************* //
3 //
4 //
5 // COPYRIGHT (c) 2006 BY FOSHAN LX.
6 // -- ALL RIGHTS RESERVED --
7 //
8 // File Name: CHAP_9.C
9 // Author: guobin
10 // Created: 2006/04/20
11 // Modified:
12 // Revision: 2.0
13 //
14 //*************************************************************************
15 */
16
17 #include <stdio.h>
18 #include <string.h>
19
20 #include "hardware.h"
21
22 #include "d12ci.h"
23 #include "mainloop.h"
24 #include "usb100.h"
25 #include "chap_9.h"
26
27 #if 0
#define NUM_ENDPOINTS 2
#define CONFIG_DESCRIPTOR_LENGTH sizeof(USB_CONFIGURATION_DESCRIPTOR) \
+ sizeof(USB_INTERFACE_DESCRIPTOR) \
+ (NUM_ENDPOINTS * sizeof(USB_ENDPOINT_DESCRIPTOR))
extern CONTROL_XFER ControlData;
extern EPPFLAGS bEPPflags;
code USB_DEVICE_DESCRIPTOR DeviceDescr =
{
sizeof(USB_DEVICE_DESCRIPTOR),
USB_DEVICE_DESCRIPTOR_TYPE,
SWAP(0x0100),
USB_CLASS_CODE_TEST_CLASS_DEVICE,
0, 0,
EP0_PACKET_SIZE,
SWAP(0x0471),
SWAP(0xFFFF),
SWAP(0x0100),
0, 0, 0,
1
};
code USB_CONFIGURATION_DESCRIPTOR ConfigDescr =
{
sizeof(USB_CONFIGURATION_DESCRIPTOR),
USB_CONFIGURATION_DESCRIPTOR_TYPE,
C51 COMPILER V8.01 CHAP_9 04/24/2006 19:23:08 PAGE 2
SWAP(CONFIG_DESCRIPTOR_LENGTH),
1,
1,
0,
0x60,
0x1
};
code USB_INTERFACE_DESCRIPTOR InterfaceDescr =
{
sizeof(USB_INTERFACE_DESCRIPTOR),
USB_INTERFACE_DESCRIPTOR_TYPE,
0,
0,
NUM_ENDPOINTS,
USB_CLASS_CODE_TEST_CLASS_DEVICE,
USB_SUBCLASS_CODE_TEST_CLASS_D12,
USB_PROTOCOL_CODE_TEST_CLASS_D12,
0
};
code USB_ENDPOINT_DESCRIPTOR EP1_TXDescr =
{
sizeof(USB_ENDPOINT_DESCRIPTOR),
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x81,
USB_ENDPOINT_TYPE_INTERRUPT,
SWAP(EP1_PACKET_SIZE),
0
};
code USB_ENDPOINT_DESCRIPTOR EP1_RXDescr =
{
sizeof(USB_ENDPOINT_DESCRIPTOR),
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x1,
USB_ENDPOINT_TYPE_INTERRUPT,
SWAP(EP1_PACKET_SIZE),
0
};
code USB_ENDPOINT_DESCRIPTOR EP2_TXDescr =
{
sizeof(USB_ENDPOINT_DESCRIPTOR),
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x82,
USB_ENDPOINT_TYPE_BULK,
SWAP(EP2_PACKET_SIZE),
10
};
code USB_ENDPOINT_DESCRIPTOR EP2_RXDescr =
{
sizeof(USB_ENDPOINT_DESCRIPTOR),
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x2,
USB_ENDPOINT_TYPE_BULK,
SWAP(EP2_PACKET_SIZE),
10
};
#else
C51 COMPILER V8.01 CHAP_9 04/24/2006 19:23:08 PAGE 3
118 #define NUM_ENDPOINTS 4
119
120 #define CONFIG_DESCRIPTOR_LENGTH sizeof(USB_CONFIGURATION_DESCRIPTOR) \
121 + sizeof(USB_INTERFACE_DESCRIPTOR) \
122 + (NUM_ENDPOINTS * sizeof(USB_ENDPOINT_DESCRIPTOR))
123
124 extern CONTROL_XFER ControlData;
125 extern EPPFLAGS bEPPflags;
126
127 code USB_DEVICE_DESCRIPTOR DeviceDescr =
128 {
129 sizeof(USB_DEVICE_DESCRIPTOR),
130 USB_DEVICE_DESCRIPTOR_TYPE,
131 SWAP(0x0100),
132 USB_CLASS_CODE_TEST_CLASS_DEVICE,
133 0, 0,
134 EP0_PACKET_SIZE,
135 SWAP(0x0471),
136 SWAP(0x0888),
137 SWAP(0x0100),
138 0, 0, 0,
139 1
140 };
141
142 code USB_CONFIGURATION_DESCRIPTOR ConfigDescr =
143 {
144 sizeof(USB_CONFIGURATION_DESCRIPTOR),
145 USB_CONFIGURATION_DESCRIPTOR_TYPE,
146 SWAP(CONFIG_DESCRIPTOR_LENGTH),
147 1,
148 1,
149 0,
150 0x60,//0x9F, // 0x80,
151 0xC8//0x32
152 };
153
154 code USB_INTERFACE_DESCRIPTOR InterfaceDescr =
155 {
156 sizeof(USB_INTERFACE_DESCRIPTOR),
157 USB_INTERFACE_DESCRIPTOR_TYPE,
158 0,
159 0,
160 NUM_ENDPOINTS,
161 USB_CLASS_CODE_TEST_CLASS_DEVICE,
162 USB_SUBCLASS_CODE_TEST_CLASS_D12,
163 USB_PROTOCOL_CODE_TEST_CLASS_D12,
164 0
165 };
166
167 code USB_ENDPOINT_DESCRIPTOR EP1_TXDescr =
168 {
169 sizeof(USB_ENDPOINT_DESCRIPTOR),
170 USB_ENDPOINT_DESCRIPTOR_TYPE,
171 0x81,
172 USB_ENDPOINT_TYPE_INTERRUPT,
173 SWAP(EP1_PACKET_SIZE),
174 10
175 };
176
177 code USB_ENDPOINT_DESCRIPTOR EP1_RXDescr =
178 {
179 sizeof(USB_ENDPOINT_DESCRIPTOR),
C51 COMPILER V8.01 CHAP_9 04/24/2006 19:23:08 PAGE 4
180 USB_ENDPOINT_DESCRIPTOR_TYPE,
181 0x1,
182 USB_ENDPOINT_TYPE_INTERRUPT,
183 SWAP(EP1_PACKET_SIZE),
184 10
185 };
186
187 code USB_ENDPOINT_DESCRIPTOR EP2_TXDescr =
188 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -