📄 bulkloop.lst
字号:
234 1 EP0BCH = 0;
235 1 EP0BCL = 1;
236 1 return(TRUE); // Handled by user code
237 1 }
238
239 BOOL DR_SetInterface(void) // Called when a Set Interface command is received
240 {
241 1 AlternateSetting = SETUPDAT[2];
C51 COMPILER V8.05a BULKLOOP 04/30/2008 16:42:26 PAGE 5
242 1 return(TRUE); // Handled by user code
243 1 }
244
245 BOOL DR_GetInterface(void) // Called when a Set Interface command is received
246 {
247 1 EP0BUF[0] = AlternateSetting;
248 1 EP0BCH = 0;
249 1 EP0BCL = 1;
250 1 return(TRUE); // Handled by user code
251 1 }
252
253 BOOL DR_GetStatus(void)
254 {
255 1 return(TRUE);
256 1 }
257
258 BOOL DR_ClearFeature(void)
259 {
260 1 return(TRUE);
261 1 }
262
263 BOOL DR_SetFeature(void)
264 {
265 1 return(TRUE);
266 1 }
267
268 BOOL DR_VendorCmnd(void)
269 {
270 1 BYTE tmp;
271 1
272 1 switch (SETUPDAT[1])
273 1 {
274 2 case VR_NAKALL_ON:
275 2 tmp = FIFORESET;
276 2 tmp |= bmNAKALL;
277 2 SYNCDELAY;
278 2 FIFORESET = tmp;
279 2 break;
280 2 case VR_NAKALL_OFF:
281 2 tmp = FIFORESET;
282 2 tmp &= ~bmNAKALL;
283 2 SYNCDELAY;
284 2 FIFORESET = tmp;
285 2 break;
286 2 default:
287 2 return(TRUE);
288 2 }
289 1
290 1 return(FALSE);
291 1 }
292
293 //-----------------------------------------------------------------------------
294 // USB Interrupt Handlers
295 // The following functions are called by the USB interrupt jump table.
296 //-----------------------------------------------------------------------------
297
298 // Setup Data Available Interrupt Handler
299 void ISR_Sudav(void) interrupt 0
300 {
301 1 GotSUD = TRUE; // Set flag
302 1 EZUSB_IRQ_CLEAR();
303 1 USBIRQ = bmSUDAV; // Clear SUDAV IRQ
C51 COMPILER V8.05a BULKLOOP 04/30/2008 16:42:26 PAGE 6
304 1 }
305
306 // Setup Token Interrupt Handler
307 void ISR_Sutok(void) interrupt 0
308 {
309 1 EZUSB_IRQ_CLEAR();
310 1 USBIRQ = bmSUTOK; // Clear SUTOK IRQ
311 1 }
312
313 void ISR_Sof(void) interrupt 0
314 {
315 1 EZUSB_IRQ_CLEAR();
316 1 USBIRQ = bmSOF; // Clear SOF IRQ
317 1 }
318
319 void ISR_Ures(void) interrupt 0
320 {
321 1 // whenever we get a USB reset, we should revert to full speed mode
322 1 pConfigDscr = pFullSpeedConfigDscr;
323 1 ((CONFIGDSCR xdata *) pConfigDscr)->type = CONFIG_DSCR;
324 1 pOtherConfigDscr = pHighSpeedConfigDscr;
325 1 ((CONFIGDSCR xdata *) pOtherConfigDscr)->type = OTHERSPEED_DSCR;
326 1
327 1 EZUSB_IRQ_CLEAR();
328 1 USBIRQ = bmURES; // Clear URES IRQ
329 1 }
330
331 void ISR_Susp(void) interrupt 0
332 {
333 1 Sleep = TRUE;
334 1 EZUSB_IRQ_CLEAR();
335 1 USBIRQ = bmSUSP;
336 1 }
337
338 void ISR_Highspeed(void) interrupt 0
339 {
340 1 if (EZUSB_HIGHSPEED())
341 1 {
342 2 pConfigDscr = pHighSpeedConfigDscr;
343 2 ((CONFIGDSCR xdata *) pConfigDscr)->type = CONFIG_DSCR;
344 2 pOtherConfigDscr = pFullSpeedConfigDscr;
345 2 ((CONFIGDSCR xdata *) pOtherConfigDscr)->type = OTHERSPEED_DSCR;
346 2 }
347 1
348 1 EZUSB_IRQ_CLEAR();
349 1 USBIRQ = bmHSGRANT;
350 1 }
351 void ISR_Ep0ack(void) interrupt 0
352 {
353 1 }
354 void ISR_Stub(void) interrupt 0
355 {
356 1 }
357 void ISR_Ep0in(void) interrupt 0
358 {
359 1 }
360 void ISR_Ep0out(void) interrupt 0
361 {
362 1 }
363 void ISR_Ep1in(void) interrupt 0
364 {
365 1 }
C51 COMPILER V8.05a BULKLOOP 04/30/2008 16:42:26 PAGE 7
366 void ISR_Ep1out(void) interrupt 0
367 {
368 1 }
369 void ISR_Ep2inout(void) interrupt 0
370 {
371 1 }
372 void ISR_Ep4inout(void) interrupt 0
373 {
374 1 }
375 void ISR_Ep6inout(void) interrupt 0
376 {
377 1 }
378 void ISR_Ep8inout(void) interrupt 0
379 {
380 1 }
381 void ISR_Ibn(void) interrupt 0
382 {
383 1 }
384 void ISR_Ep0pingnak(void) interrupt 0
385 {
386 1 }
387 void ISR_Ep1pingnak(void) interrupt 0
388 {
389 1 }
390 void ISR_Ep2pingnak(void) interrupt 0
391 {
392 1 }
393 void ISR_Ep4pingnak(void) interrupt 0
394 {
395 1 }
396 void ISR_Ep6pingnak(void) interrupt 0
397 {
398 1 }
399 void ISR_Ep8pingnak(void) interrupt 0
400 {
401 1 }
402 void ISR_Errorlimit(void) interrupt 0
403 {
404 1 }
405 void ISR_Ep2piderror(void) interrupt 0
406 {
407 1 }
408 void ISR_Ep4piderror(void) interrupt 0
409 {
410 1 }
411 void ISR_Ep6piderror(void) interrupt 0
412 {
413 1 }
414 void ISR_Ep8piderror(void) interrupt 0
415 {
416 1 }
417 void ISR_Ep2pflag(void) interrupt 0
418 {
419 1 }
420 void ISR_Ep4pflag(void) interrupt 0
421 {
422 1 }
423 void ISR_Ep6pflag(void) interrupt 0
424 {
425 1 }
426 void ISR_Ep8pflag(void) interrupt 0
427 {
C51 COMPILER V8.05a BULKLOOP 04/30/2008 16:42:26 PAGE 8
428 1 }
429 void ISR_Ep2eflag(void) interrupt 0
430 {
431 1 }
432 void ISR_Ep4eflag(void) interrupt 0
433 {
434 1 }
435 void ISR_Ep6eflag(void) interrupt 0
436 {
437 1 }
438 void ISR_Ep8eflag(void) interrupt 0
439 {
440 1 }
441 void ISR_Ep2fflag(void) interrupt 0
442 {
443 1 }
444 void ISR_Ep4fflag(void) interrupt 0
445 {
446 1 }
447 void ISR_Ep6fflag(void) interrupt 0
448 {
449 1 }
450 void ISR_Ep8fflag(void) interrupt 0
451 {
452 1 }
453 void ISR_GpifComplete(void) interrupt 0
454 {
455 1 }
456 void ISR_GpifWaveform(void) interrupt 0
457 {
458 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 894 ----
CONSTANT SIZE = 102 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 4
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -