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

📄 timer.lst

📁 与C51相关模块LCD,24CXX,等的源代码程序
💻 LST
字号:
C51 COMPILER V7.06   TIMER                                                                 03/03/2006 15:27:36 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE TIMER
OBJECT MODULE PLACED IN Timer.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Timer.c BROWSE DEBUG OBJECTEXTEND CODE SYMBOLS

stmt level    source

   1          /******************************************************
   2          DESIGN FOR TIMER USE
   3          Designer: BH Zhang
   4          Date:2006-1-11
   5          Ver:1.0
   6          Modify Mark:NONE
   7          *******************************************************/
   8          #include <at89x51.h>
   9          #include "timer.h"
  10          #include "rf315mhz.h"
  11          #include "dfq.h"
  12          #include "4X4Key.h"
  13          //------------------------------------------------------
  14          void InitTime(void){
  15   1              TMOD&=T1_MASK_;
  16   1              TMOD|=T0_M0_|T0_M1_;    //T0 Work on Mode 3
  17   1              ET0=1;                                  //Enable T0 Interrupt
  18   1      
  19   1              TH0=T1OverFlow;
  20   1      
  21   1              TL0=T0OverFlow;
  22   1      
  23   1              //PTO=0;
  24   1              //USE SERIAL COM,T1 NOT NEED INIT
  25   1              //TMOD&=T0_MASK_;
  26   1              //TMOD|=T1_M0_|T1_M1_;  //T1 Work on Mode 3
  27   1              ET1=1;                                  //Enable T1 Interrupt
  28   1              //TH1=0xEE;
  29   1              //TL1=0x10;
  30   1              PT1=1;
  31   1      }
  32          //------------------------------------------------------
  33          unsigned int T0DispDelay=2000;
  34          unsigned char T0KeyDelay=200;
  35          unsigned int T0250usDelay=0;
  36          //------------------------------------------------------
  37          void timers0() interrupt 1
  38          {
  39   1              TL0=T0OverFlow;
  40   1      
  41   1              if(nCurMode!=SEND){
  42   2                      if(--T0DispDelay==0){
  43   3                              T0DispDelay=2000;
  44   3                              Display();
  45   3                      }
  46   2              }
  47   1              
  48   1              if(nCurMode==KEY){
  49   2                      if(nKey==NOKEY)if(--T0KeyDelay==0){
  50   3                              T0KeyDelay=200;
  51   3                              nKey=GetKey();
  52   3                      }
  53   2              }
  54   1              
  55   1              if(T0250usDelay)T0250usDelay--;
C51 COMPILER V7.06   TIMER                                                                 03/03/2006 15:27:36 PAGE 2   

  56   1      }
  57          //------------------------------------------------------
  58          void timers1() interrupt 3
  59          {
  60   1              TH0=T1OverFlow;
  61   1              nCodeLen++;                     //record length per bit
  62   1      }
  63          //------------------------------------------------------
C51 COMPILER V7.06   TIMER                                                                 03/03/2006 15:27:36 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION InitTime (BEGIN)
                                           ; SOURCE LINE # 14
                                           ; SOURCE LINE # 15
0000 5389F0            ANL     TMOD,#0F0H
                                           ; SOURCE LINE # 16
0003 438903            ORL     TMOD,#03H
                                           ; SOURCE LINE # 17
0006 D2A9              SETB    ET0
                                           ; SOURCE LINE # 19
0008 758C48            MOV     TH0,#048H
                                           ; SOURCE LINE # 21
000B 758A1A            MOV     TL0,#01AH
                                           ; SOURCE LINE # 27
000E D2AB              SETB    ET1
                                           ; SOURCE LINE # 30
0010 D2BB              SETB    PT1
                                           ; SOURCE LINE # 31
0012 22                RET     
             ; FUNCTION InitTime (END)

             ; FUNCTION timers0 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0F0              PUSH    B
0004 C083              PUSH    DPH
0006 C082              PUSH    DPL
0008 C0D0              PUSH    PSW
000A 75D000            MOV     PSW,#00H
000D C000              PUSH    AR0
000F C001              PUSH    AR1
0011 C002              PUSH    AR2
0013 C003              PUSH    AR3
0015 C004              PUSH    AR4
0017 C005              PUSH    AR5
0019 C006              PUSH    AR6
001B C007              PUSH    AR7
                                           ; SOURCE LINE # 37
                                           ; SOURCE LINE # 39
001D 758A1A            MOV     TL0,#01AH
                                           ; SOURCE LINE # 41
0020 E500        E     MOV     A,nCurMode
0022 6401              XRL     A,#01H
0024 6016              JZ      ?C0002
                                           ; SOURCE LINE # 42
0026 E500        R     MOV     A,T0DispDelay+01H
0028 1500        R     DEC     T0DispDelay+01H
002A 7002              JNZ     ?C0010
002C 1500        R     DEC     T0DispDelay
002E         ?C0010:
002E 14                DEC     A
002F 4500        R     ORL     A,T0DispDelay
0031 7009              JNZ     ?C0002
                                           ; SOURCE LINE # 43
0033 750007      R     MOV     T0DispDelay,#07H
0036 7500D0      R     MOV     T0DispDelay+01H,#0D0H
                                           ; SOURCE LINE # 44
0039 120000      E     LCALL   Display
                                           ; SOURCE LINE # 45
                                           ; SOURCE LINE # 46
003C         ?C0002:
C51 COMPILER V7.06   TIMER                                                                 03/03/2006 15:27:36 PAGE 4   

                                           ; SOURCE LINE # 48
003C E500        E     MOV     A,nCurMode
003E 7010              JNZ     ?C0004
                                           ; SOURCE LINE # 49
0040 E500        E     MOV     A,nKey
0042 B4FF0B            CJNE    A,#0FFH,?C0004
0045 D50008      R     DJNZ    T0KeyDelay,?C0004
                                           ; SOURCE LINE # 50
0048 7500C8      R     MOV     T0KeyDelay,#0C8H
                                           ; SOURCE LINE # 51
004B 120000      E     LCALL   GetKey
004E 8F00        E     MOV     nKey,R7
                                           ; SOURCE LINE # 52
                                           ; SOURCE LINE # 53
0050         ?C0004:
                                           ; SOURCE LINE # 55
0050 E500        R     MOV     A,T0250usDelay+01H
0052 4500        R     ORL     A,T0250usDelay
0054 6008              JZ      ?C0008
0056 E500        R     MOV     A,T0250usDelay+01H
0058 1500        R     DEC     T0250usDelay+01H
005A 7002              JNZ     ?C0011
005C 1500        R     DEC     T0250usDelay
005E         ?C0011:
                                           ; SOURCE LINE # 56
005E         ?C0008:
005E D007              POP     AR7
0060 D006              POP     AR6
0062 D005              POP     AR5
0064 D004              POP     AR4
0066 D003              POP     AR3
0068 D002              POP     AR2
006A D001              POP     AR1
006C D000              POP     AR0
006E D0D0              POP     PSW
0070 D082              POP     DPL
0072 D083              POP     DPH
0074 D0F0              POP     B
0076 D0E0              POP     ACC
0078 32                RETI    
             ; FUNCTION timers0 (END)

             ; FUNCTION timers1 (BEGIN)
                                           ; SOURCE LINE # 58
                                           ; SOURCE LINE # 60
0000 758C48            MOV     TH0,#048H
                                           ; SOURCE LINE # 61
0003 0500        E     INC     nCodeLen
                                           ; SOURCE LINE # 62
0005 32                RETI    
             ; FUNCTION timers1 (END)

C51 COMPILER V7.06   TIMER                                                                 03/03/2006 15:27:36 PAGE 5   

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


P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
T0DispDelay. . . . . . . . . . . . . .  PUBLIC   DATA   U_INT    0000H  2
nCodeLen . . . . . . . . . . . . . . .  EXTERN   DATA   U_CHAR   -----  1
nKey . . . . . . . . . . . . . . . . .  EXTERN   DATA   U_CHAR   -----  1
T0KeyDelay . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0002H  1
nCurMode . . . . . . . . . . . . . . .  EXTERN   DATA   U_CHAR   -----  1
InitTime . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
TMOD . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0089H  1
timers0. . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
timers1. . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
GetKey . . . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
TH0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008CH  1
TL0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008AH  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
Display. . . . . . . . . . . . . . . .  EXTERN   CODE   PROC     -----  -----
T0250usDelay . . . . . . . . . . . . .  PUBLIC   DATA   U_INT    0003H  2


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