⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usb_task.lst

📁 at89c5132,at89c51snd1的usb与keyboard驱动程序。
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   USB_TASK                                                              01/29/2008 10:59:25 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE USB_TASK
OBJECT MODULE PLACED IN usb_task.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE usb_task.c LARGE OPTIMIZE(9,SPEED) INCDIR(.\;.\;.\) DEFINE(KEIL) DEBUG OBJE
                    -CTEXTEND

stmt level    source

   1          /*C**************************************************************************
   2          * NAME:         usb_task.c
   3          *----------------------------------------------------------------------------
   4          * Copyright (c) 2003 Atmel.
   5          *----------------------------------------------------------------------------
   6          * RELEASE:      c5131-usb-kbd-light-1_0_2      
   7          * REVISION:     1.7.2.3     
   8          *----------------------------------------------------------------------------
   9          * PURPOSE: 
  10          * This file controls the USB protocol.
  11          *****************************************************************************/
  12          /*_____ I N C L U D E S ____________________________________________________*/
  13          
  14          #include "config.h"
  15          #include "usb_task.h"
  16          #include "lib_mcu\usb\usb_drv.h"
  17          #include "modules\usb_kbd_enum\usb_kbd_enum.h"
  18          #include "modules\timer_soft\timer_soft.h"
  19          //#include "lib_board\lcd_twi\lcd_twi.h"
  20          //#include "lib_board\kbd_4_4\kbd_4_4.h"
  21          
  22          /*_____ M A C R O S ________________________________________________________*/
  23          
  24          /*_____ D E F I N I T I O N ________________________________________________*/
  25          
  26          bit   usb_connected;
  27          bit   usb_connected_stored;
  28          bit   usb_configured_stored;
  29          Uchar usb_sof_counter;
  30          
  31          Uchar usb_kbd_state;
  32          
  33                         Uchar  transmit_no_key;
  34          Union16 idata  scan_key;
  35                  Uchar  key_hit;
  36                  Uchar  shift_key;
  37          
  38          extern         Uchar  usb_configuration_nb;
  39          Uchar  code    usb_keys[]= {HID_ENTER, \
  40                                      HID_SB, HID_SB, HID_SB, HID_SB, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN
             -, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_ENTER, \
  41                                      HID_SB, HID_SB, HID_SB, HID_SL, HID_L , HID_SB, HID_L , HID_SB, HID_L , HID_SB
             -, HID_SB, HID_L , HID_SB, HID_L , HID_MN, HID_MN, HID_SB, HID_L , HID_SB, HID_SB, HID_ENTER, \
  42                                      HID_SB, HID_SB, HID_SL, HID_MN, HID_L , HID_SB, HID_L , HID_SB, HID_L , HID_BS
             -, HID_SL, HID_L , HID_SB, HID_L , HID_MN, HID_SB, HID_SB, HID_L , HID_SB, HID_SB, HID_ENTER, \
  43                                      HID_SB, HID_SL, HID_SB, HID_SB, HID_L , HID_SB, HID_L , HID_SB, HID_L , HID_SB
             -, HID_SB, HID_L , HID_SB, HID_L , HID_MN, HID_MN, HID_SB, HID_L , HID_MN, HID_MN, HID_ENTER, \           
  44                                      HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN
             -, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_MN, HID_ENTER, \
  45                                      HID_ENTER, \
  46                                      HID_W, HID_E, HID_L, HID_C, HID_O, HID_M, HID_E, \
  47                                      HID_SPACEBAR, HID_T, HID_O, HID_SPACEBAR, \
  48                                      HID_A, HID_T, HID_8, HID_9, HID_C, HID_5, HID_1, \
  49                                      HID_3, HID_1, HID_SPACEBAR, HID_H, HID_I, HID_D, \
C51 COMPILER V7.06   USB_TASK                                                              01/29/2008 10:59:25 PAGE 2   

  50                                      HID_SPACEBAR, HID_D, HID_E, HID_M, \
  51                                      HID_O, HID_ENTER, HID_ENTER, \
  52                                      HID_T, HID_H, HID_E, HID_SPACEBAR, \
  53                                      HID_A, HID_T, HID_8, HID_9, HID_C, HID_5, HID_1, HID_SPACEBAR,\
  54                                      HID_P, HID_R, HID_O, HID_D, HID_U, HID_C, HID_T, HID_SPACEBAR, \
  55                                      HID_I, HID_S, HID_SPACEBAR, HID_A, HID_SPACEBAR, HID_C, HID_5, HID_1, HID_SPAC
             -EBAR, \
  56                                      HID_B, HID_A, HID_S, HID_E, HID_D, HID_SPACEBAR, \
  57                                      HID_C, HID_O, HID_N, HID_T, HID_R, HID_O, HID_L, HID_L, HID_E, HID_R, HID_ENTE
             -R, \
  58                                      HID_W, HID_I, HID_T, HID_H, HID_SPACEBAR, HID_T, HID_H, HID_E, HID_SPACEBAR, \
  59                                      HID_F, HID_O, HID_L, HID_L, HID_O, HID_W, HID_I, HID_N, HID_G, HID_SPACEBAR, \
  60                                      HID_F, HID_E, HID_A, HID_T, HID_U, HID_R, HID_E, HID_S, HID_ENTER, \
  61                                      HID_MINUS, HID_SPACEBAR, HID_X, HID_2, HID_SPACEBAR, HID_C, HID_5, HID_1, HID_
             -SPACEBAR, HID_C, HID_O, HID_R, HID_E, HID_ENTER, \
  62                                      HID_MINUS, HID_SPACEBAR, HID_3, HID_2, HID_SPACEBAR, HID_K, HID_B, HID_Y, HID_
             -T, HID_E, HID_SPACEBAR, HID_F, HID_L, HID_A, HID_S, HID_H, HID_ENTER, \
  63                                      HID_MINUS, HID_SPACEBAR, HID_U, HID_S, HID_B, HID_SPACEBAR, HID_B, HID_O, HID_
             -O, HID_T, HID_L, HID_O, HID_A, HID_D, HID_E, HID_R, HID_ENTER, \
  64                                      HID_MINUS, HID_SPACEBAR, HID_U, HID_S, HID_B, HID_SPACEBAR, HID_F, HID_U, HID_
             -L, HID_L, HID_SPACEBAR, HID_S, HID_P, HID_E, HID_E, HID_D, HID_SPACEBAR, HID_C, HID_O, HID_N, HID_T, HID_R, HID_O, HID_L
             -, HID_L, HID_E, HID_R, HID_SPACEBAR, \
  65                                      HID_W, HID_I, HID_T, HID_H, HID_SPACEBAR, HID_7, HID_SPACEBAR, HID_E, HID_N, H
             -ID_D, HID_P, HID_O, HID_I, HID_N, HID_T, HID_S, HID_ENTER, \
  66                                      HID_MINUS, HID_SPACEBAR, HID_U, HID_S, HID_B, HID_SPACEBAR, HID_S, HID_O, HID_
             -F, HID_T, HID_W, HID_A, HID_R, HID_E, HID_SPACEBAR, HID_D, HID_E, HID_T, HID_A, HID_C, HID_H, HID_ENTER, \
  67                                      HID_MINUS, HID_SPACEBAR, HID_K, HID_E, HID_Y, HID_B, HID_O, HID_A, HID_R, HID_
             -D, HID_ENTER, \
  68                                      HID_MINUS, HID_SPACEBAR, HID_T, HID_W, HID_I, HID_ENTER, \
  69                                      HID_MINUS, HID_SPACEBAR, HID_S, HID_P, HID_I, HID_ENTER, HID_ENTER, \
  70                                      HID_SPACEBAR, HID_SPACEBAR, HID_E, HID_N, HID_J, HID_O, HID_Y, HID_DOT, HID_DO
             -T, HID_DOT,HID_ENTER \
  71          };
  72          #define SIZEOF_USB_KEYS     (Uint16)sizeof(usb_keys)
  73          
  74          Uchar          usb_key;
  75          Uint16         usb_data_to_send;
  76          Uchar *        usb_key_pointer;
  77          
  78          /*_____ D E C L A R A T I O N ______________________________________________*/
  79          
  80          
  81          
  82          /*F**************************************************************************
  83          * NAME: usb_task_init
  84          *----------------------------------------------------------------------------
  85          * PARAMS:
  86          * delay:    none
  87          * return:   none
  88          *----------------------------------------------------------------------------
  89          * PURPOSE: 
  90          * This function initializes the USB controller and the associated variables.
  91          *----------------------------------------------------------------------------
  92          * EXAMPLE:
  93          *----------------------------------------------------------------------------
  94          * NOTE: 
  95          *----------------------------------------------------------------------------
  96          * REQUIREMENTS: 
  97          *****************************************************************************/
  98          void usb_task_init(void)
  99          { 
 100   1        Usb_enable();
C51 COMPILER V7.06   USB_TASK                                                              01/29/2008 10:59:25 PAGE 3   

 101   1        Usb_detach();
 102   1        tempo(TIMER_5_MS);
 103   1        Usb_attach();
 104   1        configure_usb_clock();
 105   1        usb_configure_endpoint(EP_CONTROL, CONTROL);
 106   1        usb_reset_endpoint(EP_CONTROL);
 107   1      
 108   1        usb_connected = FALSE;
 109   1        usb_connected_stored = TRUE;
 110   1        usb_configured_stored = FALSE;
 111   1        transmit_no_key = FALSE;
 112   1        key_hit = FALSE;
 113   1        usb_kbd_state = 0;
 114   1        shift_key = 0;
 115   1        usb_var_init();
 116   1      
 117   1        Configure_led(0,LED_PORT_2MA);
 118   1        Configure_led(1,LED_PORT_2MA);
 119   1        Configure_led(2,LED_PORT_2MA);
 120   1        Configure_led(3,LED_PORT_2MA);
 121   1      
 122   1        Led_all_off();
 123   1      }
 124          
 125          
 126          /*F**************************************************************************
 127          * NAME: usb_task
 128          *----------------------------------------------------------------------------
 129          * PARAMS:
 130          * delay:    none
 131          * return:   none
 132          *----------------------------------------------------------------------------
 133          * PURPOSE: 
 134          * This function manages the USB communication
 135          *----------------------------------------------------------------------------
 136          * EXAMPLE:
 137          *----------------------------------------------------------------------------
 138          * NOTE: 
 139          *----------------------------------------------------------------------------
 140          * REQUIREMENTS: 
 141          *****************************************************************************/
 142          void usb_task(void)
 143          {
 144   1      
 145   1        if (Usb_suspend())
 146   1        {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -