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

📄 kbd_drv.lst

📁 PLL的资料文档,包括资料
💻 LST
📖 第 1 页 / 共 2 页
字号:
 136      =1  
 137      =1  #define I2C_ID0                 0xa0
 138      =1  #define I2C_ID1                 0xa1
 139      =1  #define I2C_ADD                 0x00
 140      =1  
 141      =1  /*----- Volume Control Start -----*/
 142      =1  #define SC7313_ADD              0x88
C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 6   

 143      =1  #define RADIO_IN                0x5c
 144      =1  #define CD_IN                   0x59    //01011001
 145      =1  #define TAPE_IN                 0x5e
 146      =1  
 147      =1  /*----- Touch Pad Control Define -----*/
 148      =1  #define TOUCH_REQUEST   0x52
 149      =1  #define TOUCH_RETURN    0x53
 150      =1  
 151      =1  #define FWVER_REG               0x00
 152      =1  #define BUTTON_REG              0x10
 153      =1  #define XY_REG                  0x20
 154      =1  #define ANGLE_REG               0x30
 155      =1  #define TPSEN_REG               0x40
 156      =1  #define FWID_REG                0xf0
 157      =1  
 158      =1  /*----- DTS system define -----*/
 159      =1  #define Mem_StartAdd    0x10
 160      =1  #define Mem_EndAdd              0x1f
 161      =1  
 162      =1  #define Mem_test                0
 163      =1  #define Mem_5                   5
 164      =1  #define Mem_10                  10
 165      =1  #define DTS_Mem_Size    Mem_10
 166      =1  
 167      =1  #define DTS_FreStart    878
 168      =1  #define DTS_FreEnd              1080
 169      =1  
 170      =1  #if             DTS_Mem_Size == Mem_5
           =1 #define Mem_Fre0                878
           =1 #define Mem_Fre1                900
           =1 #define Mem_Fre2                100
           =1 #define Mem_Fre3                960
           =1 #define Mem_Fre4                1080
           =1 #endif
 177      =1   
 178      =1  #if             DTS_Mem_Size == Mem_10
 179      =1  #define Mem_Fre0                878
 180      =1  #define Mem_Fre1                900
 181      =1  #define Mem_Fre2                940
 182      =1  #define Mem_Fre3                960
 183      =1  #define Mem_Fre4                980
 184      =1  #define Mem_Fre5                1000
 185      =1  #define Mem_Fre6                1020
 186      =1  #define Mem_Fre7                1040
 187      =1  #define Mem_Fre8                1060
 188      =1  #define Mem_Fre9                1080
 189      =1  #endif
  14          #include "driver\kbd_drv.h"                      /* scheduler definition */
   1      =1  /*H**************************************************************************
   2      =1  * NAME:         kbd_drv.h         
   3      =1  *----------------------------------------------------------------------------
   4      =1  * Copyright (c) 2006 Atmel.
   5      =1  *----------------------------------------------------------------------------
   6      =1  * RELEASE:      C51 Sample      
   7      =1  * REVISION:     1.00     
   8      =1  *----------------------------------------------------------------------------
   9      =1  * PURPOSE:
  10      =1  *****************************************************************************/
  11      =1  
  12      =1  /*_____ I N C L U D E S ____________________________________________________*/
  13      =1  
  14      =1  void kbd_init (void);
C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 7   

  15      =1  void kbd_task (void);
  16      =1  Byte kbd_decode (void);
  17      =1  void dts_FerInc (void);
  18      =1  void I2c_WriteByte (Byte address, Byte bByte);
  19      =1  
  20      =1  extern  data    Byte    gl_kbd_tick;            /* keyboard tick counter */
  21      =1  extern  bdata   bit             key_flag;
  22      =1  extern  Byte code VOL_Step_Map[];
  15          
  16          /*F**************************************************************************
  17          * NAME: kbd_init
  18          *----------------------------------------------------------------------------
  19          * PARAMS:
  20          *
  21          * return:
  22          *----------------------------------------------------------------------------
  23          * PURPOSE: 
  24          *   Keyboard initialisation function
  25          *----------------------------------------------------------------------------
  26          * EXAMPLE:
  27          *----------------------------------------------------------------------------
  28          * NOTE:
  29          *----------------------------------------------------------------------------
  30          * REQUIREMENTS:
  31          * ram/xram:
  32          * cycle:
  33          * stack: 
  34          * code:
  35          *****************************************************************************/
  36          void kbd_init (void)
  37          {
  38   1              P1 = P1|0x1f;
  39   1      }
  40          
  41          /*F**************************************************************************
  42          * NAME: kbd_decode
  43          *----------------------------------------------------------------------------
  44          * PARAMS:
  45          *
  46          * return:
  47          *   Decoded key pressed
  48          *----------------------------------------------------------------------------
  49          * PURPOSE: 
  50          *   Decode the key that generated an IT
  51          *----------------------------------------------------------------------------
  52          * EXAMPLE:
  53          *----------------------------------------------------------------------------
  54          * NOTE:
  55          *----------------------------------------------------------------------------
  56          * REQUIREMENTS:
  57          * ram/xram:
  58          * cycle:
  59          * stack: 
  60          * code:
  61          *****************************************************************************/
  62          /*读键盘键值程序段*/
  63          Byte kbd_decode (void)
  64          {
  65   1              Byte key=0;
  66   1              
  67   1              key = P1&0x1f;
  68   1              if (key != 0x1f) { key_flag = High; return(key);}
C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 8   

  69   1              else{
  70   2                      P1_0 = Low;
  71   2                      key = P1&0x1e;
  72   2                      if (key != 0x1e) { key_flag = High; return(key);}
  73   2                      else{
  74   3                              P1_0 = High;
  75   3                              P1_1 = Low;
  76   3                              key = P1&0x1d;
  77   3                              if (key != 0x1d) { key_flag = High; return(key);}
  78   3                              else{
  79   4                                      P1_1 = High;
  80   4                                      P1_2 = Low;
  81   4                                      key = P1&0x1b;
  82   4                                      if (key != 0x1b) { key_flag = High; return(key);}
  83   4                                      else{
  84   5                                              P1_2 = High;
  85   5                                              P1_3 = Low;
  86   5                                              key = P1&0x17;
  87   5                                              if (key != 0x17) { key_flag = High; return(key);}
  88   5                                              else{
  89   6                                                       P1_3 = High;
  90   6                                                       key_flag = Low; /* Have not key process */
  91   6                                                       return(0x00);
  92   6                                              }
  93   5                                      }
  94   4                              }
  95   3                      }
  96   2              }
  97   1      }
C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 9   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION kbd_init (BEGIN)
                                           ; SOURCE LINE # 36
                                           ; SOURCE LINE # 37
                                           ; SOURCE LINE # 38
0000 43901F            ORL     P1,#01FH
                                           ; SOURCE LINE # 39
0003 22                RET     
             ; FUNCTION kbd_init (END)

             ; FUNCTION kbd_decode (BEGIN)
                                           ; SOURCE LINE # 63
                                           ; SOURCE LINE # 64
                                           ; SOURCE LINE # 65
;---- Variable 'key' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 67
0000 E590              MOV     A,P1
0002 541F              ANL     A,#01FH
0004 FF                MOV     R7,A
                                           ; SOURCE LINE # 68
0005 641F              XRL     A,#01FH
0007 6003              JZ      ?C0002
0009 D200        E     SETB    key_flag
000B 22                RET     
000C         ?C0002:
                                           ; SOURCE LINE # 69
                                           ; SOURCE LINE # 70
000C C290              CLR     P1_0
                                           ; SOURCE LINE # 71
000E E590              MOV     A,P1
0010 541E              ANL     A,#01EH
0012 FF                MOV     R7,A
                                           ; SOURCE LINE # 72
0013 641E              XRL     A,#01EH
0015 6003              JZ      ?C0005
0017 D200        E     SETB    key_flag
0019 22                RET     
001A         ?C0005:
                                           ; SOURCE LINE # 73
                                           ; SOURCE LINE # 74
001A D290              SETB    P1_0
                                           ; SOURCE LINE # 75
001C C291              CLR     P1_1
                                           ; SOURCE LINE # 76
001E E590              MOV     A,P1
0020 541D              ANL     A,#01DH
0022 FF                MOV     R7,A
                                           ; SOURCE LINE # 77
0023 641D              XRL     A,#01DH
0025 6003              JZ      ?C0007
0027 D200        E     SETB    key_flag
0029 22                RET     
002A         ?C0007:
                                           ; SOURCE LINE # 78
                                           ; SOURCE LINE # 79
002A D291              SETB    P1_1
                                           ; SOURCE LINE # 80
002C C292              CLR     P1_2
                                           ; SOURCE LINE # 81
002E E590              MOV     A,P1
C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 10  

0030 541B              ANL     A,#01BH
0032 FF                MOV     R7,A
                                           ; SOURCE LINE # 82
0033 641B              XRL     A,#01BH
0035 6003              JZ      ?C0009
0037 D200        E     SETB    key_flag
0039 22                RET     
003A         ?C0009:
                                           ; SOURCE LINE # 83
                                           ; SOURCE LINE # 84
003A D292              SETB    P1_2
                                           ; SOURCE LINE # 85
003C C293              CLR     P1_3
                                           ; SOURCE LINE # 86
003E E590              MOV     A,P1
0040 5417              ANL     A,#017H
0042 FF                MOV     R7,A
                                           ; SOURCE LINE # 87
0043 6417              XRL     A,#017H
0045 6003              JZ      ?C0011
0047 D200        E     SETB    key_flag
0049 22                RET     
004A         ?C0011:
                                           ; SOURCE LINE # 88
                                           ; SOURCE LINE # 89
004A D293              SETB    P1_3
                                           ; SOURCE LINE # 90
004C C200        E     CLR     key_flag
                                           ; SOURCE LINE # 91
004E 7F00              MOV     R7,#00H
                                           ; SOURCE LINE # 92
                                           ; SOURCE LINE # 93
                                           ; SOURCE LINE # 94
                                           ; SOURCE LINE # 95
                                           ; SOURCE LINE # 96
                                           ; SOURCE LINE # 97
0050         ?C0003:
0050 22                RET     
             ; FUNCTION kbd_decode (END)

C51 COMPILER V8.01   KBD_DRV                                                               08/07/2006 11:16:10 PAGE 11  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P2 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A0H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
Uint32 . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_LONG   -----  4
Uint16 . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
P1_0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
Int32. . . . . . . . . . . . . . . . .  TYPEDEF  -----  LONG     -----  4
P1_1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
P1_2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0092H  1
Int16. . . . . . . . . . . . . . . . .  TYPEDEF  -----  INT      -----  2
P1_3 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0093H  1
Byte . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
key_flag . . . . . . . . . . . . . . .  EXTERN   DATA   BIT      -----  1
kbd_init . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
Float16. . . . . . . . . . . . . . . .  TYPEDEF  -----  FLOAT    -----  4
Uchar. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
kbd_decode . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  key. . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     85    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   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 + -