📄 chap9.lst
字号:
C51 COMPILER V7.09 CHAP9 05/11/2005 17:30:28 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE CHAP9
OBJECT MODULE PLACED IN CHAP9.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE CHAP9.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /*
2 //*************************************************************************
3 //
4 // P H I L I P S P R O P R I E T A R Y
5 //
6 // COPYRIGHT (c) 1997 BY PHILIPS SINGAPORE.
7 // -- ALL RIGHTS RESERVED --
8 //
9 // File Name: CHAP_9.C
10 // Author: Wenkai Du
11 // Created: 19 Dec 97
12 // Modified:
13 // Revision: 3.0
14 //
15 //*************************************************************************
16 */
17
18 #include <stdio.h>
19 #include <string.h>
20
21
22 #include "d12ci.h"
23 #include "main.h"
*** ERROR C129 IN LINE 101 OF MAIN.H: missing ';' before 'struct'
24 #include "usb100.h"
25 #include "chap9.h"
26 //#include "44b.h"
27 #define NUM_ENDPOINTS 2
28
29 #define CONFIG_DESCRIPTOR_LENGTH sizeof(USB_CONFIGURATION_DESCRIPTOR) \
30 + sizeof(USB_INTERFACE_DESCRIPTOR) \
31 + (NUM_ENDPOINTS * sizeof(USB_ENDPOINT_DESCRIPTOR))
32
33
34 extern CONTROL_XFER ControlData;
35 extern IO_REQUEST ioRequest;
36 extern EPPFLAGS bEPPflags;
37
38 TOTAL_CONFIGURATION_DESCRIPTOR Total_Configuration_Descriptor=
39 {
40 9,
41 2,
42 CONFIG_DESCRIPTOR_LENGTH,
43 1,
44 1,
45 0,
46 0x80,
47 0x32,
48
49 sizeof(USB_INTERFACE_DESCRIPTOR),
50 USB_INTERFACE_DESCRIPTOR_TYPE,
51 0,
52 0,
53 NUM_ENDPOINTS,
54 8,
C51 COMPILER V7.09 CHAP9 05/11/2005 17:30:28 PAGE 2
55 6, //interface subclass1=RBC,2=SFF,3=QIC,4=UFI,5=SFF,6=SCSI
56 0x50,//bulk 0nly
57 0,
58
59 //Bulk-in Endpoint
60 0x07, //length of this desc.
61 0x05, //ENDPOINT descriptor
62 0x82, //address (IN) Endpoint 4 84
63 0x02, //attributes (BULK)
64 0x0040, //max packet size (64)
65 0x0, //Does not apply to Bulk endpoints
66
67 //Bulk-out Endpoint
68 0x07, //length of this desc.
69 0x05, //ENDPOINT descriptor
70 0x02, //address (OUT) Endpoint 5 05
71 0x02, //attributes (BULK)
72 0x0040, //max packet size (64)
73 0x0 //Does not apply to Bulk endpoints
74
75 };
76
77 USB_DEVICE_DESCRIPTOR DeviceDescr =
78 {
79 0x12, //0x12
80 0x01, //DEVICE descriptor
81 0x0100, //spec rev level (BCD) 1.0
82 0x00, //device class
83 0x00, //device subclass
84 0x00, //device protocol
85 0x10, //max packet size
86 0x0584, //National's vendor ID
87 0x0001, //National's product ID
88 0x0100, //National's revision ID
89 0, //index of manuf. string
90 0, //index of prod. string
91 0, //index of ser. # string
92 0x01 //number of configs.
93 };
94
95 USB_CONFIGURATION_DESCRIPTOR ConfigDescr =
96 {
97 9,
98 2,
99 CONFIG_DESCRIPTOR_LENGTH,
100 1,
101 1,
102 0,
103 0x80,
104 0x32
105 };
106
107 USB_INTERFACE_DESCRIPTOR InterfaceDescr =
108 {
109 sizeof(USB_INTERFACE_DESCRIPTOR),
110 USB_INTERFACE_DESCRIPTOR_TYPE,
111 0,
112 0,
113 NUM_ENDPOINTS,
114 8,
115 6, //interface subclass6=SCSI
116 0x50,//bulk 0nly
C51 COMPILER V7.09 CHAP9 05/11/2005 17:30:28 PAGE 3
117 0
118 };
119
120 USB_ENDPOINT_DESCRIPTOR EP1_TXDescr =
121 {
122 sizeof(USB_ENDPOINT_DESCRIPTOR),
123 USB_ENDPOINT_DESCRIPTOR_TYPE,
124 0x82,
125 USB_ENDPOINT_TYPE_INTERRUPT,
126 EP1_PACKET_SIZE,
127 10
128 };
129
130 USB_ENDPOINT_DESCRIPTOR EP1_RXDescr =
131 {
132 sizeof(USB_ENDPOINT_DESCRIPTOR),
133 USB_ENDPOINT_DESCRIPTOR_TYPE,
134 0x2,
135 USB_ENDPOINT_TYPE_INTERRUPT,
136 EP1_PACKET_SIZE,
137 10
138 };
139
140 USB_ENDPOINT_DESCRIPTOR EP2_TXDescr =
141 {
142 sizeof(USB_ENDPOINT_DESCRIPTOR),
143 USB_ENDPOINT_DESCRIPTOR_TYPE,
144 0x82,
145 USB_ENDPOINT_TYPE_BULK,
146 EP2_PACKET_SIZE,
147 10
148 };
149
150 USB_ENDPOINT_DESCRIPTOR EP2_RXDescr =
151 {
152 sizeof(USB_ENDPOINT_DESCRIPTOR),
153 USB_ENDPOINT_DESCRIPTOR_TYPE,
154 0x2,
155 USB_ENDPOINT_TYPE_BULK,
156 EP2_PACKET_SIZE,
157 10
158 };
159
160 /*
161 //*************************************************************************
162 // USB Protocol Layer
163 //*************************************************************************
164 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -