?? board.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 + -