blink.lst

来自「ADuC7020/26是ADI模拟公司开发的ARM7TDMI内核」· LST 代码 · 共 113 行

LST
113
字号
ARM COMPILER V2.53,  blink                                                                 11/12/07  13:41:35  PAGE 1   


ARM COMPILER V2.53, COMPILATION OF MODULE blink
OBJECT MODULE PLACED IN blink.OBJ
COMPILER INVOKED BY: d:\Keil\ARM\BIN\CA.exe blink.c THUMB DEBUG TABS(4) 

stmt  level    source

    1          /*********************************************************************
    2          
    3           Author        : ADI - Apps            www.analog.com/MicroConverter
    4          
    5           Date          : Sept. 2005
    6          
    7           File          : blink.c
    8          
    9           Hardware      : Applicable to ADuC702x rev H or I silicon
   10                           Currently targetting ADuC7026.
   11          
   12           Description   : Blinks LED continuously
   13                  
   14          *********************************************************************/
   15          #include<aduc7026.h>
   16          
   17          void delay(int);
   18          
   19          int main(void) {
   20   1      
   21   1      GP4DAT = 0x04000000;            // P4.2 configured as an output. LED is turned on   
   22   1      
   23   1      
   24   1      while (1) {
   25   2          GP4DAT ^= 0x00040000;       // Complement P4.2
   26   2          delay(2000001);
   27   2          }               
   28   1      }
   29          
   30          void delay (int length) {
   31   1          while (length >=0)
   32   1              length--;
   33   1      }
ARM COMPILER V2.53,  blink                                                                 11/12/07  13:41:35  PAGE 2   

ASSEMBLY LISTING OF GENERATED OBJECT CODE



*** EXTERNALS:
 EXTERN NUMBER (__startup)



*** PUBLICS:
 PUBLIC         delay?T
 PUBLIC         main



*** CODE SEGMENT '?PR?main?blink':
   19: int main(void) {
 00000000  B500      PUSH        {LR}
   21: GP4DAT = 0x04000000;            // P4.2 configured as an output. LED is turned on   
 00000002  4800      LDR         R1,=0x4000000
 00000004  4800      LDR         R0,=0xFFFFF460
 00000006  6001      STR         R1,[R0,#0x0]
   24: while (1) {
 00000008          L_3:
   25:     GP4DAT ^= 0x00040000;       // Complement P4.2
 00000008  4800      LDR         R2,=0x40000
 0000000A  4800      LDR         R0,=0xFFFFF460
 0000000C  6801      LDR         R1,[R0,#0x0]
 0000000E  4051      EOR         R1,R2
 00000010  6001      STR         R1,[R0,#0x0]
   26:     delay(2000001);
 00000012  4800      LDR         R0,=0x1E8481
 00000014  F7FF      BL          delay?T  ; T=0x0001  (1)
 00000016  FFF4      BL          delay?T  ; T=0x0001  (2)
   27:     }                
 00000018  E7F6      B           L_3  ; T=0x00000008
   28: }
 0000001A  BC08      POP         {R3}
 0000001C  4718      BX          R3
 0000001E          ENDP ; 'main'


*** CODE SEGMENT '?PR?delay?T?blink':
   30: void delay (int length) {
 00000000  ---- Variable 'length' assigned to Register 'R0' ----
   31:     while (length >=0)
 00000000  E000      B           L_5  ; T=0x00000004
 00000002          L_7:
 00000002  3801      SUB         R0,#0x1
 00000004          L_5:
 00000004  1C01      MOV         R1,R0 ; length
 00000006  2900      CMP         R1,#0x0 ; length
 00000008  DAFB      BGE         L_7  ; T=0x00000002
   33: }
 0000000A  4770      BX          R14
 0000000C          ENDP ; 'delay?T'



Module Information          Static
----------------------------------
  code size            =    ------
  data size            =    ------
  const size           =    ------
End of Module Information.


ARM COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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