📄 main.lst
字号:
170 1 ISP1581_SetEndpointConfig(EPINDEX4EP02OUT, 0);
171 1 ISP1581_SetEndpointConfig(EPINDEX4EP02IN, 0);
172 1 ISP1581_SetEndpointConfig(EPINDEX4EP03OUT, 0);
173 1 ISP1581_SetEndpointConfig(EPINDEX4EP03IN, 0);
174 1 ISP1581_SetEndpointConfig(EPINDEX4EP04OUT, 0);
175 1 ISP1581_SetEndpointConfig(EPINDEX4EP04IN, 0);
176 1 ISP1581_SetEndpointConfig(EPINDEX4EP05OUT, 0);
177 1 ISP1581_SetEndpointConfig(EPINDEX4EP05IN, 0);
C51 COMPILER V8.02 MAIN 08/03/2006 10:10:36 PAGE 4
178 1 ISP1581_SetEndpointConfig(EPINDEX4EP06OUT, 0);
179 1 ISP1581_SetEndpointConfig(EPINDEX4EP06IN, 0);
180 1 ISP1581_SetEndpointConfig(EPINDEX4EP07OUT, 0);
181 1 ISP1581_SetEndpointConfig(EPINDEX4EP07IN, 0);
182 1
183 1 switch(bZBoardFlags.bits.ConnectSpeed)
184 1 {
185 2 case FullSpeed:
186 2 {
187 3 ISP1581_SetEPMAXSize(EPINDEX4EP01OUT, EP1_PACKET_SIZE);
188 3 ISP1581_SetEPMAXSize(EPINDEX4EP01IN, EP1_PACKET_SIZE);
189 3 globe_variable.maxepsize_bulk = maxepsize_FS;
190 3 ISP1581_SetEPMAXSize(EPINDEX4EP02OUT, globe_variable.maxepsize_bulk);
191 3 ISP1581_SetEPMAXSize(EPINDEX4EP02IN, globe_variable.maxepsize_bulk);
192 3 //ISP1581_SetEPMAXSize(EPINDEX4EP03OUT, maxepsize_256);
193 3 //ISP1581_SetEPMAXSize(EPINDEX4EP03IN, maxepsize_256);
194 3 ISP1581_SetEPMAXSize(EPINDEX4EP04OUT, maxepsize_16);
195 3 ISP1581_SetEPMAXSize(EPINDEX4EP04IN, maxepsize_16);
196 3 break;
197 3 }
198 2 case HighSpeed:
199 2 {
200 3 ISP1581_SetEPMAXSize(EPINDEX4EP01OUT, maxepsize_512);
201 3 ISP1581_SetEPMAXSize(EPINDEX4EP01IN, maxepsize_512);
202 3 globe_variable.maxepsize_bulk = maxepsize_HS;
203 3 ISP1581_SetEPMAXSize(EPINDEX4EP02OUT, globe_variable.maxepsize_bulk);
204 3 ISP1581_SetEPMAXSize(EPINDEX4EP02IN, globe_variable.maxepsize_bulk);
205 3 //ISP1581_SetEPMAXSize(EPINDEX4EP03OUT, maxepsize_256);
206 3 //ISP1581_SetEPMAXSize(EPINDEX4EP03IN, maxepsize_256);
207 3 ISP1581_SetEPMAXSize(EPINDEX4EP04OUT, maxepsize_512);
208 3 ISP1581_SetEPMAXSize(EPINDEX4EP04IN, maxepsize_16);
209 3 break;
210 3 }
211 2 default:
212 2 {
213 3 globe_variable.maxepsize_bulk = maxepsize_FS;
214 3 break;
215 3 }
216 2 }
217 1
218 1 ISP1581_SetEPMAXSize(EPINDEX4EP03OUT, maxepsize_0);
219 1 ISP1581_SetEPMAXSize(EPINDEX4EP03IN, maxepsize_0);
220 1 ISP1581_SetEPMAXSize(EPINDEX4EP05OUT, maxepsize_0);
221 1 ISP1581_SetEPMAXSize(EPINDEX4EP05IN, maxepsize_0);
222 1 ISP1581_SetEPMAXSize(EPINDEX4EP06OUT, maxepsize_0);
223 1 ISP1581_SetEPMAXSize(EPINDEX4EP06IN, maxepsize_0);
224 1 ISP1581_SetEPMAXSize(EPINDEX4EP07OUT, maxepsize_0);
225 1 ISP1581_SetEPMAXSize(EPINDEX4EP07IN, maxepsize_0);
226 1
227 1 ISP1581_SetEndpointConfig(EPINDEX4EP01OUT, eptype_bulk|eptype_enable);
228 1 ISP1581_SetEndpointConfig(EPINDEX4EP01IN, eptype_bulk|eptype_enable);//|eptype_doublebuf);//|eptype_noemp
-kt);
229 1 ISP1581_SetEndpointConfig(EPINDEX4EP02OUT, eptype_bulk|eptype_enable|eptype_doublebuf);
230 1 ISP1581_SetEndpointConfig(EPINDEX4EP02IN, eptype_bulk|eptype_enable|eptype_doublebuf|eptype_noempkt);
231 1 ISP1581_SetEndpointConfig(EPINDEX4EP03OUT, 0);
232 1 ISP1581_SetEndpointConfig(EPINDEX4EP03IN, 0);
233 1 ISP1581_SetEndpointConfig(EPINDEX4EP04OUT, eptype_bulk|eptype_enable);
234 1 ISP1581_SetEndpointConfig(EPINDEX4EP04IN, eptype_int|eptype_enable);
235 1 ISP1581_SetEndpointConfig(EPINDEX4EP05OUT, 0);
236 1 ISP1581_SetEndpointConfig(EPINDEX4EP05IN, 0);
237 1 ISP1581_SetEndpointConfig(EPINDEX4EP06OUT, 0);
238 1 ISP1581_SetEndpointConfig(EPINDEX4EP06IN, 0);
C51 COMPILER V8.02 MAIN 08/03/2006 10:10:36 PAGE 5
239 1 ISP1581_SetEndpointConfig(EPINDEX4EP07OUT, 0);
240 1 ISP1581_SetEndpointConfig(EPINDEX4EP07IN, 0);
241 1 ISP1581_ClearBuffer(EPINDEX4EP01OUT);
242 1 ISP1581_ClearBuffer(EPINDEX4EP01IN);
243 1 ISP1581_ClearBuffer(EPINDEX4EP02OUT);
244 1 ISP1581_ClearBuffer(EPINDEX4EP02IN);
245 1 ISP1581_ClearBuffer(EPINDEX4EP03OUT);
246 1 ISP1581_ClearBuffer(EPINDEX4EP03IN);
247 1 ISP1581_ClearBuffer(EPINDEX4EP04OUT);
248 1 ISP1581_ClearBuffer(EPINDEX4EP04IN);
249 1
250 1 }
251
252 void Isr_BusReset(void)
253 {
254 1 bZBoardFlags.bits.DCP_state = USBFSM4DCP_IDLE;
255 1 bZBoardFlags.bits.dma_state = DMA_IDLE;
256 1 ioRequest.bAddressH = 0;
257 1 ioRequest.uAddressL = 0;
258 1 ioRequest.uSize = 0;
259 1 globe_variable.ioINSize = 0;
260 1 globe_variable.ioINCount = 0;
261 1 globe_variable.ioOUTSize = 0;
262 1 globe_variable.ioOUTCount = 0;
263 1 bZBoardFlags.bits.CONTROL_HANDLE_DONE = 0;
264 1 bZBoardFlags.bits.ISO_CONFIG = 0;
265 1 ISP1581_SetDMAInt(0xffff);//c);
266 1 ISP1581_IntClearl(0xffff);
267 1 ISP1581_IntClearh(0xffff);
268 1 ISP1581_Initiate();
269 1 }
270
271 void Device_Initiate(void)
272 {
273 1 unsigned long clk_cnt;
274 1
275 1 MCU_LED0 = 0;
276 1 MCU_LED1 = 0;
277 1
278 1 disconnect_USB();
279 1
280 1 ENABLE_INTERRUPTS;
281 1 clk_cnt = lClockTicks;
282 1 while(lClockTicks < clk_cnt + 20);
283 1 DISABLE_INTERRUPTS;
284 1
285 1 bZBoardFlags.bits.DCP_state = USBFSM4DCP_IDLE;
286 1 bZBoardFlags.bits.ConnectSpeed = FullSpeed;
287 1 bZBoardFlags.bits.dma_state = DMA_IDLE;
288 1 bZBoardFlags.bits.CONTROL_HANDLE_DONE = 0;
289 1 bZBoardFlags.bits.ISO_CONFIG = 0;
290 1 ISP1581_SetDMAInt(0xffff);//c);
291 1 ISP1581_IntClearl(0xffff);
292 1 ISP1581_IntClearh(0xffff);
293 1 ioRequest.bAddressH = 0;
294 1 ioRequest.uAddressL = 0;
295 1 ioRequest.uSize = 0;
296 1 globe_variable.ioINSize = 0;
297 1 globe_variable.ioINCount = 0;
298 1 globe_variable.ioOUTSize = 0;
299 1 globe_variable.ioOUTCount = 0;
300 1
C51 COMPILER V8.02 MAIN 08/03/2006 10:10:36 PAGE 6
301 1 globe_variable.isoINSize = 0;
302 1 globe_variable.isoINCount = 0;
303 1 globe_variable.isoOUTSize = 0;
304 1 globe_variable.isoOUTCount = 0;
305 1
306 1 MCU_LED0 = 1;
307 1 MCU_LED1 = 1;
308 1
309 1 connect_USB();
310 1 return;
311 1 }
312 void disconnect_USB(void)
313 {
314 1 ISP1581_SetTestMode(testmode_forcefs);
315 1 //You may need some delay here if MPU is very fast.
316 1 ISP1581_SetMode(/* mode_clkaon*/mode_glintena);
317 1 // |mode_wkupcs);
318 1 // |mode_softct);
319 1
320 1 }
321 void connect_USB(void)
322 {
323 1 bZBoardFlags.bits.DCP_state = USBFSM4DCP_IDLE;
324 1 ISP1581_Initiate();
325 1 }
326
327
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 980 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 26 6
IDATA SIZE = 6 ----
BIT SIZE = ---- ----
EDATA SIZE = ---- ----
HDATA SIZE = ---- ----
XDATA CONST SIZE = ---- ----
FAR CONST SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -