📄 fx2hid.lst
字号:
268 1 }
269
270 BOOL TD_Suspend(void) // Called before the device goes into suspend mode
271 {
272 1 return(TRUE);
273 1 }
274
275 BOOL TD_Resume(void) // Called after the device resumes
276 {
277 1 return(TRUE);
278 1 }
279
280 //-----------------------------------------------------------------------------
281 // Device Request hooks
282 // The following hooks are called by the end point 0 device request parser.
283 //-----------------------------------------------------------------------------
284
285 BOOL DR_GetDescriptor(void)
286 {
287 1 return(TRUE);
288 1 }
289
290 BOOL DR_SetConfiguration(void) // Called when a Set Configuration command is received
291 {
292 1 Configuration = SETUPDAT[2];
293 1 return(TRUE); // Handled by user code
294 1 }
295
296 BOOL DR_GetConfiguration(void) // Called when a Get Configuration command is received
297 {
298 1 EP0BUF[0] = Configuration;
299 1 EP0BCH = 0;
300 1 EP0BCL = 1;
301 1 return(TRUE); // Handled by user code
302 1 }
303
C51 COMPILER V7.50 FX2HID 05/29/2006 13:56:14 PAGE 6
304 BOOL DR_SetInterface(void) // Called when a Set Interface command is received
305 {
306 1 AlternateSetting = SETUPDAT[2];
307 1 return(TRUE); // Handled by user code
308 1 }
309
310 BOOL DR_GetInterface(void) // Called when a Set Interface command is received
311 {
312 1 EP0BUF[0] = AlternateSetting;
313 1 EP0BCH = 0;
314 1 EP0BCL = 1;
315 1 return(TRUE); // Handled by user code
316 1 }
317
318 BOOL DR_GetStatus(void)
319 {
320 1 return(TRUE);
321 1 }
322
323 BOOL DR_ClearFeature(void)
324 {
325 1 return(TRUE);
326 1 }
327
328 BOOL DR_SetFeature(void)
329 {
330 1 return(TRUE);
331 1 }
332
333 BOOL DR_VendorCmnd(void)
334 {
335 1 BYTE tmp;
336 1
337 1 switch (SETUPDAT[1])
338 1 {
339 2 case VR_NAKALL_ON:
340 2 tmp = FIFORESET;
341 2 tmp |= bmNAKALL;
342 2 SYNCDELAY;
343 2 FIFORESET = tmp;
344 2 break;
345 2 case VR_NAKALL_OFF:
346 2 tmp = FIFORESET;
347 2 tmp &= ~bmNAKALL;
348 2 SYNCDELAY;
349 2 FIFORESET = tmp;
350 2 break;
351 2 default:
352 2 return(TRUE);
353 2 }
354 1
355 1 return(FALSE);
356 1 }
357
358 //-----------------------------------------------------------------------------
359 // USB Interrupt Handlers
360 // The following functions are called by the USB interrupt jump table.
361 //-----------------------------------------------------------------------------
362
363 // Setup Data Available Interrupt Handler
364 void ISR_Sudav(void) interrupt 0
365 {
C51 COMPILER V7.50 FX2HID 05/29/2006 13:56:14 PAGE 7
366 1 GotSUD = TRUE; // Set flag
367 1 EZUSB_IRQ_CLEAR();
368 1 USBIRQ = bmSUDAV; // Clear SUDAV IRQ
369 1 }
370
371 // Setup Token Interrupt Handler
372 void ISR_Sutok(void) interrupt 0
373 {
374 1 EZUSB_IRQ_CLEAR();
375 1 USBIRQ = bmSUTOK; // Clear SUTOK IRQ
376 1 }
377
378 void ISR_Sof(void) interrupt 0
379 {
380 1 EZUSB_IRQ_CLEAR();
381 1 USBIRQ = bmSOF; // Clear SOF IRQ
382 1 }
383
384 void ISR_Ures(void) interrupt 0
385 {
386 1 // whenever we get a USB reset, we should revert to full speed mode
387 1
388 1 ((CONFIGDSCR xdata *) pConfigDscr)->type = CONFIG_DSCR;
389 1 // pOtherConfigDscr = pHighSpeedConfigDscr;
390 1 // ((CONFIGDSCR xdata *) pOtherConfigDscr)->type = OTHERSPEED_DSCR;
391 1
392 1 EZUSB_IRQ_CLEAR();
393 1 USBIRQ = bmURES; // Clear URES IRQ
394 1 }
395
396 void ISR_Susp(void) interrupt 0
397 {
398 1 Sleep = TRUE;
399 1 EZUSB_IRQ_CLEAR();
400 1 USBIRQ = bmSUSP;
401 1 }
402
403 void ISR_Highspeed(void) interrupt 0
404 {
405 1 // if (EZUSB_HIGHSPEED())
406 1 // {
407 1 // pConfigDscr = pHighSpeedConfigDscr;
408 1 // ((CONFIGDSCR xdata *) pConfigDscr)->type = CONFIG_DSCR;
409 1 // pOtherConfigDscr = pFullSpeedConfigDscr;
410 1 // ((CONFIGDSCR xdata *) pOtherConfigDscr)->type = OTHERSPEED_DSCR;
411 1 // }
412 1
413 1 EZUSB_IRQ_CLEAR();
414 1 USBIRQ = bmHSGRANT;
415 1 }
416
417
418
419 void ISR_Ep0ack(void) interrupt 0
420 {
421 1 }
422 void ISR_Stub(void) interrupt 0
423 {
424 1 }
425 void ISR_Ep0in(void) interrupt 0
426 {
427 1 }
C51 COMPILER V7.50 FX2HID 05/29/2006 13:56:14 PAGE 8
428 void ISR_Ep0out(void) interrupt 0
429 {
430 1 }
431 void ISR_Ep1in(void) interrupt 0
432 {
433 1 }
434 void ISR_Ep1out(void) interrupt 0
435 {
436 1 }
437 void ISR_Ep2inout(void) interrupt 0
438 {
439 1 }
440 void ISR_Ep4inout(void) interrupt 0
441 {
442 1 }
443 void ISR_Ep6inout(void) interrupt 0
444 {
445 1 }
446 void ISR_Ep8inout(void) interrupt 0
447 {
448 1 }
449 void ISR_Ibn(void) interrupt 0
450 {
451 1 }
452 void ISR_Ep0pingnak(void) interrupt 0
453 {
454 1 }
455 void ISR_Ep1pingnak(void) interrupt 0
456 {
457 1 }
458 void ISR_Ep2pingnak(void) interrupt 0
459 {
460 1 }
461 void ISR_Ep4pingnak(void) interrupt 0
462 {
463 1 }
464 void ISR_Ep6pingnak(void) interrupt 0
465 {
466 1 }
467 void ISR_Ep8pingnak(void) interrupt 0
468 {
469 1 }
470 void ISR_Errorlimit(void) interrupt 0
471 {
472 1 }
473 void ISR_Ep2piderror(void) interrupt 0
474 {
475 1 }
476 void ISR_Ep4piderror(void) interrupt 0
477 {
478 1 }
479 void ISR_Ep6piderror(void) interrupt 0
480 {
481 1 }
482 void ISR_Ep8piderror(void) interrupt 0
483 {
484 1 }
485 void ISR_Ep2pflag(void) interrupt 0
486 {
487 1 }
488 void ISR_Ep4pflag(void) interrupt 0
489 {
C51 COMPILER V7.50 FX2HID 05/29/2006 13:56:14 PAGE 9
490 1 }
491 void ISR_Ep6pflag(void) interrupt 0
492 {
493 1 }
494 void ISR_Ep8pflag(void) interrupt 0
495 {
496 1 }
497 void ISR_Ep2eflag(void) interrupt 0
498 {
499 1 }
500 void ISR_Ep4eflag(void) interrupt 0
501 {
502 1 }
503 void ISR_Ep6eflag(void) interrupt 0
504 {
505 1 }
506 void ISR_Ep8eflag(void) interrupt 0
507 {
508 1 }
509 void ISR_Ep2fflag(void) interrupt 0
510 {
511 1 }
512 void ISR_Ep4fflag(void) interrupt 0
513 {
514 1 }
515 void ISR_Ep6fflag(void) interrupt 0
516 {
517 1 }
518 void ISR_Ep8fflag(void) interrupt 0
519 {
520 1 }
521 void ISR_GpifComplete(void) interrupt 0
522 {
523 1 }
524
525 void ISR_GpifWaveform(void) interrupt 0
526 {
527 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 536 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 11 1
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 + -