📄 stop.txt
字号:
; generated by ARM C Compiler, ADS1.2 [Build 842]
; commandline [-errors .\err\stop.err -O0 -asm -g+ -cpu 5TEJ -fs -Wd -Ec -I.\include "-IC:\Program Files\ARM\ADSv1_2\INCLUDE"]
CODE32
AREA ||.text||, CODE, READONLY
EintInt PROC
;;;20 static void __irq EintInt(void) //EINT0,1
;;;21 {
|L1.0|
000000 e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;22 rEINTMASK |= ( (BIT_EINTPEND_EINT1)|(BIT_EINTPEND_EINT0) );
000004 e59f00a0 LDR r0,|L1.172|
000008 e5900034 LDR r0,[r0,#0x34]
00000c e3800003 ORR r0,r0,#3
000010 e59f1094 LDR r1,|L1.172|
000014 e5810034 STR r0,[r1,#0x34]
;;;23 rINTMSK |= (BIT_EINT0_2);
000018 e2410646 SUB r0,r1,#0x4600000
00001c e5900008 LDR r0,[r0,#8]
000020 e3800001 ORR r0,r0,#1
000024 e2411646 SUB r1,r1,#0x4600000
000028 e5810008 STR r0,[r1,#8]
;;;24
;;;25 if(rEINTPEND&(1<<0))
00002c e2810646 ADD r0,r1,#0x4600000
000030 e5900038 LDR r0,[r0,#0x38]
000034 e3100001 TST r0,#1
000038 0a000005 BEQ |L1.84|
;;;26 {
;;;27 rEINTPEND=BIT_EINTPEND_EINT0;
00003c e3a00001 MOV r0,#1
000040 e2811646 ADD r1,r1,#0x4600000
000044 e5810038 STR r0,[r1,#0x38]
;;;28 Uart_Printf("EINT0 for STOP wake-up.\n");
000048 e28f0060 ADR r0,|L1.176|
00004c ebfffffe BL _printf
000050 ea00000b B |L1.132|
;;;29 }
;;;30 else if(rEINTPEND&(1<<1))
|L1.84|
000054 e59f0050 LDR r0,|L1.172|
000058 e5900038 LDR r0,[r0,#0x38]
00005c e3100002 TST r0,#2
000060 0a000005 BEQ |L1.124|
;;;31 {
;;;32 rEINTPEND=BIT_EINTPEND_EINT1;
000064 e3a00002 MOV r0,#2
000068 e59f103c LDR r1,|L1.172|
00006c e5810038 STR r0,[r1,#0x38]
;;;33 Uart_Printf("EINT1 for STOP wake-up.\n");
000070 e28f0054 ADR r0,|L1.204|
000074 ebfffffe BL _printf
000078 ea000001 B |L1.132|
;;;34 }
;;;35 else
;;;36 Uart_Printf("EINT Error!!\n");
|L1.124|
00007c e28f0064 ADR r0,|L1.232|
000080 ebfffffe BL _printf
;;;37
;;;38 ClearPending(BIT_EINT0_2);
|L1.132|
000084 e3a00001 MOV r0,#1
000088 e59f1068 LDR r1,|L1.248|
00008c e5810000 STR r0,[r1,#0]
000090 e1c10000 BIC r0,r1,r0
000094 e5900010 LDR r0,[r0,#0x10]
000098 e5810010 STR r0,[r1,#0x10]
00009c e1a00001 MOV r0,r1
0000a0 e5900010 LDR r0,[r0,#0x10]
;;;39 }
0000a4 e8bd500f LDMFD sp!,{r0-r3,r12,lr}
0000a8 e25ef004 SUBS pc,lr,#4
|L1.172|
0000ac 44800000 DCD 0x44800000
|L1.176|
0000b0 544e4945 DCB "EINT"
0000b4 6f662030 DCB "0 fo"
0000b8 54532072 DCB "r ST"
0000bc 7720504f DCB "OP w"
0000c0 2d656b61 DCB "ake-"
0000c4 0a2e7075 DCB "up.\n"
0000c8 00000000 DCB "\0\0\0\0"
|L1.204|
0000cc 544e4945 DCB "EINT"
0000d0 6f662031 DCB "1 fo"
0000d4 54532072 DCB "r ST"
0000d8 7720504f DCB "OP w"
0000dc 2d656b61 DCB "ake-"
0000e0 0a2e7075 DCB "up.\n"
0000e4 00000000 DCB "\0\0\0\0"
|L1.232|
0000e8 544e4945 DCB "EINT"
0000ec 72724520 DCB " Err"
0000f0 2121726f DCB "or!!"
0000f4 0000000a DCB "\n\0\0\0"
|L1.248|
0000f8 40200000 DCD 0x40200000
ENDP
Eint9Int PROC
;;;41 static void __irq Eint9Int(void) //EINT9
;;;42 {
|L1.252|
0000fc e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;43 rEINTMASK |=(BIT_EINTPEND_EINT9);
000100 e51f005c LDR r0,|L1.172|
000104 e5900034 LDR r0,[r0,#0x34]
000108 e3800f80 ORR r0,r0,#0x200
00010c e51f1068 LDR r1,|L1.172|
000110 e5810034 STR r0,[r1,#0x34]
;;;44 rINTMSK |= (BIT_EINT7_10);
000114 e2410646 SUB r0,r1,#0x4600000
000118 e5900008 LDR r0,[r0,#8]
00011c e3800004 ORR r0,r0,#4
000120 e2411646 SUB r1,r1,#0x4600000
000124 e5810008 STR r0,[r1,#8]
;;;45
;;;46 rEINTPEND=BIT_EINTPEND_EINT9;
000128 e3a00f80 MOV r0,#0x200
00012c e2811646 ADD r1,r1,#0x4600000
000130 e5810038 STR r0,[r1,#0x38]
;;;47 ClearPending(BIT_EINT7_10);
000134 e3a00004 MOV r0,#4
000138 e2411646 SUB r1,r1,#0x4600000
00013c e5810000 STR r0,[r1,#0]
000140 e1c10000 BIC r0,r1,r0
000144 e5900010 LDR r0,[r0,#0x10]
000148 e5810010 STR r0,[r1,#0x10]
00014c e1a00001 MOV r0,r1
000150 e5900010 LDR r0,[r0,#0x10]
;;;48 Uart_Printf("EINT9 for STOP wake-up.\n");
000154 e28f0008 ADR r0,|L1.356|
000158 ebfffffe BL _printf
;;;49 }
00015c e8bd500f LDMFD sp!,{r0-r3,r12,lr}
000160 e25ef004 SUBS pc,lr,#4
|L1.356|
000164 544e4945 DCB "EINT"
000168 6f662039 DCB "9 fo"
00016c 54532072 DCB "r ST"
000170 7720504f DCB "OP w"
000174 2d656b61 DCB "ake-"
000178 0a2e7075 DCB "up.\n"
00017c 00000000 DCB "\0\0\0\0"
ENDP
Eint11Int PROC
;;;51 static void __irq Eint11Int(void) //EINT11
;;;52 {
|L1.384|
000180 e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;53 //Must not be occured......;-)
;;;54 rEINTMASK |=(BIT_EINTPEND_EINT11);
000184 e51f00e0 LDR r0,|L1.172|
000188 e5900034 LDR r0,[r0,#0x34]
00018c e3800e80 ORR r0,r0,#0x800
000190 e51f10ec LDR r1,|L1.172|
000194 e5810034 STR r0,[r1,#0x34]
;;;55 rINTMSK |= (BIT_EINT11_14);
000198 e2410646 SUB r0,r1,#0x4600000
00019c e5900008 LDR r0,[r0,#8]
0001a0 e3800008 ORR r0,r0,#8
0001a4 e2411646 SUB r1,r1,#0x4600000
0001a8 e5810008 STR r0,[r1,#8]
;;;56
;;;57 rEINTPEND=BIT_EINTPEND_EINT11;
0001ac e3a00e80 MOV r0,#0x800
0001b0 e2811646 ADD r1,r1,#0x4600000
0001b4 e5810038 STR r0,[r1,#0x38]
;;;58 ClearPending(BIT_EINT11_14);
0001b8 e3a00008 MOV r0,#8
0001bc e2411646 SUB r1,r1,#0x4600000
0001c0 e5810000 STR r0,[r1,#0]
0001c4 e1c10000 BIC r0,r1,r0
0001c8 e5900010 LDR r0,[r0,#0x10]
0001cc e5810010 STR r0,[r1,#0x10]
0001d0 e1a00001 MOV r0,r1
0001d4 e5900010 LDR r0,[r0,#0x10]
;;;59
;;;60 Uart_Printf("???EINT11 for STOP wake-up.\n");
0001d8 e28f0008 ADR r0,|L1.488|
0001dc ebfffffe BL _printf
;;;61 }
0001e0 e8bd500f LDMFD sp!,{r0-r3,r12,lr}
0001e4 e25ef004 SUBS pc,lr,#4
|L1.488|
0001e8 453f3f3f DCB "???E"
0001ec 31544e49 DCB "INT1"
0001f0 6f662031 DCB "1 fo"
0001f4 54532072 DCB "r ST"
0001f8 7720504f DCB "OP w"
0001fc 2d656b61 DCB "ake-"
000200 0a2e7075 DCB "up.\n"
000204 00000000 DCB "\0\0\0\0"
ENDP
EintInt_Hard PROC
;;;63 static void __irq EintInt_Hard(void)
;;;64 {
|L1.520|
000208 e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;65 //EINT9
;;;66 //This test needs External Function Generator to generate INT request
;;;67
;;;68 rEINTPEND=BIT_EINTPEND_EINT9;
00020c e3a00f80 MOV r0,#0x200
000210 e51f116c LDR r1,|L1.172|
000214 e5810038 STR r0,[r1,#0x38]
;;;69 ClearPending(BIT_EINT7_10);
000218 e3a00004 MOV r0,#4
00021c e2411646 SUB r1,r1,#0x4600000
000220 e5810000 STR r0,[r1,#0]
000224 e1c10000 BIC r0,r1,r0
000228 e5900010 LDR r0,[r0,#0x10]
00022c e5810010 STR r0,[r1,#0x10]
000230 e1a00001 MOV r0,r1
000234 e5900010 LDR r0,[r0,#0x10]
;;;70 p_cnt++;
000238 e59f0080 LDR r0,|L1.704|
00023c e5900000 LDR r0,[r0,#0] ; p_cnt
000240 e2800001 ADD r0,r0,#1
000244 e59f1074 LDR r1,|L1.704|
000248 e5810000 STR r0,[r1,#0] ; p_cnt
;;;71 if(p_cnt%100==0)
00024c e59f006c LDR r0,|L1.704|
000250 e5901000 LDR r1,[r0,#0] ; p_cnt
000254 e3a00064 MOV r0,#0x64
000258 ebfffffe BL __rt_sdiv
00025c e3510000 CMP r1,#0
000260 1a000002 BNE |L1.624|
;;;72 WrUTXH0('#');
000264 e3a00023 MOV r0,#0x23
000268 e59f1054 LDR r1,|L1.708|
00026c e5c10020 STRB r0,[r1,#0x20]
;;;73 }
|L1.624|
000270 e8bd500f LDMFD sp!,{r0-r3,r12,lr}
000274 e25ef004 SUBS pc,lr,#4
ENDP
AlarmInt PROC
;;;75 static void __irq AlarmInt(void)
;;;76 {
|L1.632|
000278 e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;77 rINTMSK=rINTMSK|(BIT_RTC);
00027c e51f018c LDR r0,|L1.248|
000280 e5900008 LDR r0,[r0,#8]
000284 e3800440 ORR r0,r0,#0x40000000
000288 e51f1198 LDR r1,|L1.248|
00028c e5810008 STR r0,[r1,#8]
;;;78 ClearPending(BIT_RTC);
000290 e3a00440 MOV r0,#0x40000000
000294 e18014c0 ORR r1,r0,r0,ASR #9
000298 e5810000 STR r0,[r1,#0]
00029c e18004c0 ORR r0,r0,r0,ASR #9
0002a0 e5900010 LDR r0,[r0,#0x10]
0002a4 e5810010 STR r0,[r1,#0x10]
0002a8 e1a00001 MOV r0,r1
0002ac e5900010 LDR r0,[r0,#0x10]
;;;79 Uart_Printf("ALARM for STOP wake-up.\n");
0002b0 e28f0010 ADR r0,|L1.712|
0002b4 ebfffffe BL _printf
;;;80 }
0002b8 e8bd500f LDMFD sp!,{r0-r3,r12,lr}
0002bc e25ef004 SUBS pc,lr,#4
|L1.704|
0002c0 00000000 DCD ||.bss$2||
|L1.708|
0002c4 44400000 DCD 0x44400000
|L1.712|
0002c8 52414c41 DCB "ALAR"
0002cc 6f66204d DCB "M fo"
0002d0 54532072 DCB "r ST"
0002d4 7720504f DCB "OP w"
0002d8 2d656b61 DCB "ake-"
0002dc 0a2e7075 DCB "up.\n"
0002e0 00000000 DCB "\0\0\0\0"
ENDP
ModemInt PROC
;;;82 static void __irq ModemInt(void)
;;;83 {
|L1.740|
0002e4 e92d500f STMFD sp!,{r0-r3,r12,lr}
;;;84 rINTMSK=rINTMSK|(BIT_MODEM);
0002e8 e51f01f8 LDR r0,|L1.248|
0002ec e5900008 LDR r0,[r0,#8]
0002f0 e3800a80 ORR r0,r0,#0x80000
0002f4 e51f1204 LDR r1,|L1.248|
0002f8 e5810008 STR r0,[r1,#8]
;;;85 ClearPending(BIT_MODEM);
0002fc e3a00a80 MOV r0,#0x80000
000300 e1c11000 BIC r1,r1,r0
000304 e5810000 STR r0,[r1,#0]
000308 e1c10000 BIC r0,r1,r0
00030c e5900010 LDR r0,[r0,#0x10]
000310 e5810010 STR r0,[r1,#0x10]
000314 e1a00001 MOV r0,r1
000318 e5900010 LDR r0,[r0,#0x10]
;;;86 Uart_Printf("Modem int. for STOP wake-up.\n");
00031c e28f0008 ADR r0,|L1.812|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -