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

📄 board.txt

📁 ATMEL ARM7 SAM64 Porting ucos / Keil ARM VER3.04。不同于其它
💻 TXT
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.0 [Build 951] for uVision
; commandline ArmCC [--debug -c --asm --interleave -o.\ULINK-RAM\Obj\board.o --device=DARMATS --apcs=interwork -I..\..\..\..\uCOS-II\Source -I..\..\..\..\uCOS-II\Ports\ARM\Generic\KEILRV -I.\APP -I.\BSP -IC:\DEVELOP\Keil\ARM\INC\Atmel\SAM7S APP\board.c]

                          ARM

                          AREA ||.text.7||, CODE, READONLY, ALIGN=2

                  LED_Off PROC
;;;80     {
;;;81         switch (led) {
000000  e3500005          CMP      r0,#5
000004  e3a01000          MOV      r1,#0                 ;80
000008  308ff100          ADDCC    pc,pc,r0,LSL #2
;;;82             case 0:
;;;83                  AT91C_BASE_PIOA->PIO_SODR = BSP_LED4 | BSP_LED3 | BSP_LED2 | BSP_LED1;
;;;84                  break;
;;;85     
;;;86             case 1:
;;;87                  AT91C_BASE_PIOA->PIO_SODR = BSP_LED1;
;;;88                  break;
;;;89     
;;;90             case 2:
;;;91                  AT91C_BASE_PIOA->PIO_SODR = BSP_LED2;
;;;92                  break;
;;;93     
;;;94             case 3:
;;;95                  AT91C_BASE_PIOA->PIO_SODR = BSP_LED3;
;;;96                  break;
;;;97     
;;;98             case 4:
;;;99                  AT91C_BASE_PIOA->PIO_SODR = BSP_LED4;
;;;100                 break;
;;;101        }
;;;102    }
00000c  e12fff1e          BX       lr
000010  ea000003          B        |L1.36|
000014  ea000004          B        |L1.44|
000018  ea000005          B        |L1.52|
00001c  ea000006          B        |L1.60|
000020  ea000007          B        |L1.68|
                  |L1.36|
000024  e3a0000f          MOV      r0,#0xf               ;83
000028  ea000006          B        |L1.72|               ;84
                  |L1.44|
00002c  e3a00001          MOV      r0,#1                 ;87
000030  ea000004          B        |L1.72|               ;88
                  |L1.52|
000034  e3a00002          MOV      r0,#2                 ;91
000038  ea000002          B        |L1.72|               ;92
                  |L1.60|
00003c  e3a00004          MOV      r0,#4                 ;95
000040  ea000000          B        |L1.72|               ;96
                  |L1.68|
000044  e3a00008          MOV      r0,#8                 ;99
                  |L1.72|
000048  e5010bd0          STR      r0,[r1,#-0xbd0]       ;99
00004c  e12fff1e          BX       lr
                          ENDP

                  LED_Init PROC
;;;17     {
;;;18         AT91C_BASE_PIOA->PIO_PER  = BSP_LED4 | BSP_LED3 | BSP_LED2 | BSP_LED1; /* Enable register          */
000050  e3a0000f          MOV      r0,#0xf
000054  e3a01000          MOV      r1,#0
000058  e5010c00          STR      r0,[r1,#-0xc00]
;;;19         AT91C_BASE_PIOA->PIO_OER  = BSP_LED4 | BSP_LED3 | BSP_LED2 | BSP_LED1; /* Output enable            */
00005c  e5010bf0          STR      r0,[r1,#-0xbf0]
;;;20         AT91C_BASE_PIOA->PIO_IDR  = BSP_LED4 | BSP_LED3 | BSP_LED2 | BSP_LED1;
000060  e5010bbc          STR      r0,[r1,#-0xbbc]
;;;21         LED_Off(BSP_LED_ALL);                                                  /* Turn OFF all the LEDs    */
000064  e1a00001          MOV      r0,r1
000068  eafffffe          B        LED_Off
;;;22     }
                          ENDP

                  LED_On PROC
;;;40     {
;;;41         switch (led) {
00006c  e3500005          CMP      r0,#5
000070  e3a01000          MOV      r1,#0                 ;40
000074  308ff100          ADDCC    pc,pc,r0,LSL #2
;;;42             case 0:
;;;43                  AT91C_BASE_PIOA->PIO_CODR = BSP_LED4 | BSP_LED3 | BSP_LED2 | BSP_LED1;
;;;44                  break;
;;;45     
;;;46             case 1:
;;;47                  AT91C_BASE_PIOA->PIO_CODR = BSP_LED1;
;;;48                  break;
;;;49     
;;;50             case 2:
;;;51                  AT91C_BASE_PIOA->PIO_CODR = BSP_LED2;
;;;52                  break;
;;;53     
;;;54             case 3:
;;;55                  AT91C_BASE_PIOA->PIO_CODR = BSP_LED3;
;;;56                  break;
;;;57     
;;;58             case 4:
;;;59                  AT91C_BASE_PIOA->PIO_CODR = BSP_LED4;
;;;60                  break;
;;;61         }
;;;62     }
000078  e12fff1e          BX       lr
00007c  ea000003          B        |L1.144|
000080  ea000004          B        |L1.152|
000084  ea000005          B        |L1.160|
000088  ea000006          B        |L1.168|
00008c  ea000007          B        |L1.176|
                  |L1.144|
000090  e3a0000f          MOV      r0,#0xf               ;43
000094  ea000006          B        |L1.180|              ;44
                  |L1.152|
000098  e3a00001          MOV      r0,#1                 ;47
00009c  ea000004          B        |L1.180|              ;48
                  |L1.160|
0000a0  e3a00002          MOV      r0,#2                 ;51
0000a4  ea000002          B        |L1.180|              ;52
                  |L1.168|
0000a8  e3a00004          MOV      r0,#4                 ;55
0000ac  ea000000          B        |L1.180|              ;56
                  |L1.176|
0000b0  e3a00008          MOV      r0,#8                 ;59
                  |L1.180|
0000b4  e5010bcc          STR      r0,[r1,#-0xbcc]       ;59
0000b8  e12fff1e          BX       lr
                          ENDP

                  LED_Toggle PROC
;;;119    void  LED_Toggle (INT8U led)
;;;120    {
0000bc  e52de004          PUSH     {lr}
;;;121        switch (led) {
0000c0  e3500005          CMP      r0,#5
0000c4  e3a02004          MOV      r2,#4                 ;120
0000c8  e3a0c002          MOV      r12,#2                ;120
0000cc  e3a0e001          MOV      lr,#1                 ;120
0000d0  e3a03008          MOV      r3,#8                 ;120
0000d4  e3a01000          MOV      r1,#0                 ;120
0000d8  308ff100          ADDCC    pc,pc,r0,LSL #2
0000dc  ea000014          B        |L1.308|
0000e0  ea000003          B        |L1.244|
0000e4  ea000014          B        |L1.316|
0000e8  ea000018          B        |L1.336|
0000ec  ea00001c          B        |L1.356|
0000f0  ea00000b          B        |L1.292|
;;;122            case 0:
;;;123                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED1) {
                  |L1.244|
0000f4  e5110bc8          LDR      r0,[r1,#-0xbc8]
0000f8  e3100001          TST      r0,#1
;;;124                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED1;
;;;125                 } else {
;;;126                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED1;
0000fc  0501ebd0          STREQ    lr,[r1,#-0xbd0]
000100  1501ebcc          STRNE    lr,[r1,#-0xbcc]       ;124
;;;127                 }
;;;128                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED2) {
000104  e5110bc8          LDR      r0,[r1,#-0xbc8]
000108  e3100002          TST      r0,#2
;;;129                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED2;
;;;130                 } else {
;;;131                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED2;
00010c  0501cbd0          STREQ    r12,[r1,#-0xbd0]
000110  1501cbcc          STRNE    r12,[r1,#-0xbcc]      ;129
;;;132                 }
;;;133                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED3) {
000114  e5110bc8          LDR      r0,[r1,#-0xbc8]
000118  e3100004          TST      r0,#4
;;;134                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED3;
;;;135                 } else {
;;;136                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED3;
00011c  05012bd0          STREQ    r2,[r1,#-0xbd0]
000120  15012bcc          STRNE    r2,[r1,#-0xbcc]       ;134
;;;137                 }
;;;138                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED4) {
;;;139                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED4;
;;;140                 } else {
;;;141                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED4;
;;;142                 }
;;;143                 break;
;;;144    
;;;145            case 1:
;;;146                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED1) {
;;;147                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED1;
;;;148                 } else {
;;;149                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED1;
;;;150                 }
;;;151                 break;
;;;152    
;;;153            case 2:
;;;154                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED2) {
;;;155                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED2;
;;;156                 } else {
;;;157                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED2;
;;;158                 }
;;;159                 break;
;;;160    
;;;161            case 3:
;;;162                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED3) {
;;;163                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED3;
;;;164                 } else {
;;;165                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED3;
;;;166                 }
;;;167                 break;
;;;168    
;;;169            case 4:
;;;170                 if (AT91C_BASE_PIOA->PIO_ODSR & BSP_LED4) {
                  |L1.292|
000124  e5110bc8          LDR      r0,[r1,#-0xbc8]
000128  e3100008          TST      r0,#8
00012c  05013bd0          STREQ    r3,[r1,#-0xbd0]       ;141
000130  15013bcc          STRNE    r3,[r1,#-0xbcc]       ;139
;;;171                     AT91C_BASE_PIOA->PIO_CODR = BSP_LED4;
;;;172                 } else {
;;;173                     AT91C_BASE_PIOA->PIO_SODR = BSP_LED4;
;;;174                 }
;;;175                 break;
;;;176        }
;;;177    }
                  |L1.308|
000134  e49de004          POP      {lr}
000138  e12fff1e          BX       lr
                  |L1.316|
00013c  e5110bc8          LDR      r0,[r1,#-0xbc8]       ;146
000140  e3100001          TST      r0,#1                 ;146
000144  0501ebd0          STREQ    lr,[r1,#-0xbd0]       ;149
000148  1501ebcc          STRNE    lr,[r1,#-0xbcc]       ;147
00014c  eafffff8          B        |L1.308|              ;147
                  |L1.336|
000150  e5110bc8          LDR      r0,[r1,#-0xbc8]       ;154
000154  e3100002          TST      r0,#2                 ;154
000158  0501cbd0          STREQ    r12,[r1,#-0xbd0]      ;157
00015c  1501cbcc          STRNE    r12,[r1,#-0xbcc]      ;155
000160  eafffff3          B        |L1.308|              ;155
                  |L1.356|
000164  e5110bc8          LDR      r0,[r1,#-0xbc8]       ;162
000168  e3100004          TST      r0,#4                 ;162
00016c  05012bd0          STREQ    r2,[r1,#-0xbd0]       ;165
000170  15012bcc          STRNE    r2,[r1,#-0xbcc]       ;163
000174  eaffffee          B        |L1.308|              ;163
                          ENDP


⌨️ 快捷键说明

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