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

📄 main.lst

📁 8051 timer for atmel at89c52 or At89s52
💻 LST
字号:
C51 COMPILER V6.03b  MAIN                                                                  11/26/2000 19:41:56 PAGE 1   


C51 COMPILER V6.03b, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\main.c BROWSE DEBUG OBJECTEXTEND CODE SYMBOLS

stmt level    source

   1          #include <reg52.h>
   2          #include <stdio.h>
   3          
   4          /*------------------------------------------------
   5          Timer 1 Interrupt Service Routine.
   6          
   7          Set a breakpoint on 'overflow_count++' and run the
   8          program in the debugger.  You will see this line
   9          executes every 100 clock cycles (or 10,000 Hz).
  10          
  11          So, overflow_count is actually a 1/10,000 sec
  12          timer.
  13          ------------------------------------------------*/
  14          static unsigned long overflow_count = 0;
  15          
  16          void timer1_ISR (void) interrupt 3
  17          {
  18   1      overflow_count++;   /* Increment the overflow count */
  19   1      }
  20          
  21          /*------------------------------------------------
  22          MAIN C function
  23          ------------------------------------------------*/
  24          void main (void)
  25          {
  26   1      /*--------------------------------------
  27   1      Set Timer1 for 8-bit timer with reload
  28   1      (mode 2). The timer counts to 255,
  29   1      overflows, is reloaded with 156, and
  30   1      generates an interrupt.
  31   1      
  32   1      Set the Timer1 Run control bit.
  33   1      --------------------------------------*/
  34   1      TMOD = (TMOD & 0x0F) | 0x20;  /* Set Mode (8-bit timer with reload) */
  35   1      TH1 = 256 - 100;              /* Reload TL1 to count 100 clocks */
  36   1      TL1 = TH1;
  37   1      ET1 = 1;                      /* Enable Timer 1 Interrupts */
  38   1      TR1 = 1;                      /* Start Timer 1 Running */
  39   1      EA = 1;                       /* Global Interrupt Enable */
  40   1      
  41   1      /*--------------------------------------
  42   1      Do Nothing.  Actually, the timer 1
  43   1      interrupt will occur every 100 clocks.
  44   1      Since the oscillator runs at 12 MHz,
  45   1      the interrupt will happen every 10 KHz.
  46   1      --------------------------------------*/
  47   1      while (1)
  48   1        {
  49   2        }
  50   1      }
  51          
C51 COMPILER V6.03b  MAIN                                                                  11/26/2000 19:41:56 PAGE 2   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION timer1_ISR (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0D0              PUSH    PSW
                                           ; SOURCE LINE # 16
                                           ; SOURCE LINE # 18
0004 E500        R     MOV     A,overflow_count+03H
0006 2401              ADD     A,#01H
0008 F500        R     MOV     overflow_count+03H,A
000A E4                CLR     A
000B 3500        R     ADDC    A,overflow_count+02H
000D F500        R     MOV     overflow_count+02H,A
000F E4                CLR     A
0010 3500        R     ADDC    A,overflow_count+01H
0012 F500        R     MOV     overflow_count+01H,A
0014 E4                CLR     A
0015 3500        R     ADDC    A,overflow_count
0017 F500        R     MOV     overflow_count,A
                                           ; SOURCE LINE # 19
0019 D0D0              POP     PSW
001B D0E0              POP     ACC
001D 32                RETI    
             ; FUNCTION timer1_ISR (END)

             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 24
                                           ; SOURCE LINE # 25
                                           ; SOURCE LINE # 34
0000 E589              MOV     A,TMOD
0002 540F              ANL     A,#0FH
0004 4420              ORL     A,#020H
0006 F589              MOV     TMOD,A
                                           ; SOURCE LINE # 35
0008 758D9C            MOV     TH1,#09CH
                                           ; SOURCE LINE # 36
000B 858D8B            MOV     TL1,TH1
                                           ; SOURCE LINE # 37
000E D2AB              SETB    ET1
                                           ; SOURCE LINE # 38
0010 D28E              SETB    TR1
                                           ; SOURCE LINE # 39
0012 D2AF              SETB    EA
0014         ?C0002:
                                           ; SOURCE LINE # 47
                                           ; SOURCE LINE # 48
                                           ; SOURCE LINE # 49
0014 80FE              SJMP    ?C0002
             ; FUNCTION main (END)

C51 COMPILER V6.03b  MAIN                                                                  11/26/2000 19:41:56 PAGE 3   

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


P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
P3 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B0H  1
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
T2 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
overflow_count . . . . . . . . . . . .  STATIC   DATA   U_LONG   0000H  4
IE . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
EXF2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CEH  1
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
IP . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00B8H  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
T2EX . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
timer1_ISR . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
C_T2 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C9H  1
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
RCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CDH  1
TCLK . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CCH  1
SCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0098H  1
TMOD . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0089H  1
TCON . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0088H  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
CP_RL2 . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00C8H  1
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
ET2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ADH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
TF2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CFH  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
TH1. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008DH  1
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
TL1. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008BH  1
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
PT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
PT2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BDH  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
C51 COMPILER V6.03b  MAIN                                                                  11/26/2000 19:41:56 PAGE 4   

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


RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
TR2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CAH  1
PX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
EXEN2. . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00CBH  1
REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
T2CON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C8H  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1
PSW. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00D0H  1


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