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

📄 idle.txt

📁 s3c24a0固件测试代码 ? ? ? ? ?啊 
💻 TXT
📖 第 1 页 / 共 4 页
字号:
; generated by ARM C Compiler, ADS1.2 [Build 842]

; commandline [-errors .\err\idle.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
;;;38     static void __irq EintInt(void)//EINT0,1
;;;39     {
                  |L1.0|
000000  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;40     //    rEINTMASK |= ( (BIT_EINTPEND_EINT1)|(BIT_EINTPEND_EINT0) );
;;;41     //    rINTMSK |= (BIT_EINT0_2);
;;;42     
;;;43         if(rEINTPEND&(1<<0))    //if EINT0
000004  e59f0078          LDR      r0,|L1.132|
000008  e5900038          LDR      r0,[r0,#0x38]
00000c  e3100001          TST      r0,#1
000010  0a000005          BEQ      |L1.44|
;;;44         {
;;;45     	rEINTPEND=BIT_EINTPEND_EINT0;
000014  e3a00001          MOV      r0,#1
000018  e59f1064          LDR      r1,|L1.132|
00001c  e5810038          STR      r0,[r1,#0x38]
;;;46     	Uart_Printf("EINT0 for IDLE wake-up.\n");
000020  e28f0060          ADR      r0,|L1.136|
000024  ebfffffe          BL       _printf
000028  ea00000b          B        |L1.92|
;;;47         }
;;;48         else if(rEINTPEND&(1<<1))//if EINT1
                  |L1.44|
00002c  e59f0050          LDR      r0,|L1.132|
000030  e5900038          LDR      r0,[r0,#0x38]
000034  e3100002          TST      r0,#2
000038  0a000005          BEQ      |L1.84|
;;;49         {
;;;50     	rEINTPEND=BIT_EINTPEND_EINT1;
00003c  e3a00002          MOV      r0,#2
000040  e59f103c          LDR      r1,|L1.132|
000044  e5810038          STR      r0,[r1,#0x38]
;;;51     	Uart_Printf("EINT1 for IDLE wake-up.\n");
000048  e28f0054          ADR      r0,|L1.164|
00004c  ebfffffe          BL       _printf
000050  ea000001          B        |L1.92|
;;;52         }
;;;53         else 
;;;54     	Uart_Printf("EINT Error!!\n");
                  |L1.84|
000054  e28f0064          ADR      r0,|L1.192|
000058  ebfffffe          BL       _printf
;;;55     
;;;56         ClearPending(BIT_EINT0_2);
                  |L1.92|
00005c  e3a00001          MOV      r0,#1
000060  e59f1068          LDR      r1,|L1.208|
000064  e5810000          STR      r0,[r1,#0]
000068  e1c10000          BIC      r0,r1,r0
00006c  e5900010          LDR      r0,[r0,#0x10]
000070  e5810010          STR      r0,[r1,#0x10]
000074  e1a00001          MOV      r0,r1
000078  e5900010          LDR      r0,[r0,#0x10]
;;;57     }
00007c  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
000080  e25ef004          SUBS     pc,lr,#4
                  |L1.132|
000084  44800000          DCD      0x44800000
                  |L1.136|
000088  544e4945          DCB      "EINT"
00008c  6f662030          DCB      "0 fo"
000090  44492072          DCB      "r ID"
000094  7720454c          DCB      "LE w"
000098  2d656b61          DCB      "ake-"
00009c  0a2e7075          DCB      "up.\n"
0000a0  00000000          DCB      "\0\0\0\0"
                  |L1.164|
0000a4  544e4945          DCB      "EINT"
0000a8  6f662031          DCB      "1 fo"
0000ac  44492072          DCB      "r ID"
0000b0  7720454c          DCB      "LE w"
0000b4  2d656b61          DCB      "ake-"
0000b8  0a2e7075          DCB      "up.\n"
0000bc  00000000          DCB      "\0\0\0\0"
                  |L1.192|
0000c0  544e4945          DCB      "EINT"
0000c4  72724520          DCB      " Err"
0000c8  2121726f          DCB      "or!!"
0000cc  0000000a          DCB      "\n\0\0\0"
                  |L1.208|
0000d0  40200000          DCD      0x40200000
                          ENDP

                  Eint9Int PROC
;;;59     static void __irq Eint9Int(void)//EINT9
;;;60     {
                  |L1.212|
0000d4  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;61     //    rEINTMASK |=(BIT_EINTPEND_EINT9);
;;;62     //    rINTMSK |= (BIT_EINT7_10);
;;;63     
;;;64         rEINTPEND=BIT_EINTPEND_EINT9;
0000d8  e3a00f80          MOV      r0,#0x200
0000dc  e51f1060          LDR      r1,|L1.132|
0000e0  e5810038          STR      r0,[r1,#0x38]
;;;65         ClearPending(BIT_EINT7_10);
0000e4  e3a00004          MOV      r0,#4
0000e8  e2411646          SUB      r1,r1,#0x4600000
0000ec  e5810000          STR      r0,[r1,#0]
0000f0  e1c10000          BIC      r0,r1,r0
0000f4  e5900010          LDR      r0,[r0,#0x10]
0000f8  e5810010          STR      r0,[r1,#0x10]
0000fc  e1a00001          MOV      r0,r1
000100  e5900010          LDR      r0,[r0,#0x10]
;;;66         Uart_Printf("EINT9 for IDLE wake-up.\n");
000104  e28f0008          ADR      r0,|L1.276|
000108  ebfffffe          BL       _printf
;;;67     }
00010c  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
000110  e25ef004          SUBS     pc,lr,#4
                  |L1.276|
000114  544e4945          DCB      "EINT"
000118  6f662039          DCB      "9 fo"
00011c  44492072          DCB      "r ID"
000120  7720454c          DCB      "LE w"
000124  2d656b61          DCB      "ake-"
000128  0a2e7075          DCB      "up.\n"
00012c  00000000          DCB      "\0\0\0\0"
                          ENDP

                  AlarmInt PROC
;;;69     static void __irq AlarmInt(void)
;;;70     {
                  |L1.304|
000130  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;71     //    rINTMSK=rINTMSK|(BIT_RTC);
;;;72         ClearPending(BIT_RTC);
000134  e3a00440          MOV      r0,#0x40000000
000138  e18014c0          ORR      r1,r0,r0,ASR #9
00013c  e5810000          STR      r0,[r1,#0]
000140  e18004c0          ORR      r0,r0,r0,ASR #9
000144  e5900010          LDR      r0,[r0,#0x10]
000148  e5810010          STR      r0,[r1,#0x10]
00014c  e1a00001          MOV      r0,r1
000150  e5900010          LDR      r0,[r0,#0x10]
;;;73         Uart_Printf("ALARM interrupt for IDLE wake-up.\n");
000154  e28f0008          ADR      r0,|L1.356|
000158  ebfffffe          BL       _printf
;;;74     }
00015c  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
000160  e25ef004          SUBS     pc,lr,#4
                  |L1.356|
000164  52414c41          DCB      "ALAR"
000168  6e69204d          DCB      "M in"
00016c  72726574          DCB      "terr"
000170  20747075          DCB      "upt "
000174  20726f66          DCB      "for "
000178  454c4449          DCB      "IDLE"
00017c  6b617720          DCB      " wak"
000180  70752d65          DCB      "e-up"
000184  00000a2e          DCB      ".\n\0\0"
                          ENDP

                  ModemInt PROC
;;;76     static void __irq ModemInt(void)
;;;77     {
                  |L1.392|
000188  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;78     //    rINTMSK=rINTMSK|(BIT_MODEM);
;;;79         ClearPending(BIT_MODEM);
00018c  e3a00a80          MOV      r0,#0x80000
000190  e51f10c8          LDR      r1,|L1.208|
000194  e5810000          STR      r0,[r1,#0]
000198  e1c10000          BIC      r0,r1,r0
00019c  e5900010          LDR      r0,[r0,#0x10]
0001a0  e5810010          STR      r0,[r1,#0x10]
0001a4  e1a00001          MOV      r0,r1
0001a8  e5900010          LDR      r0,[r0,#0x10]
;;;80         Uart_Printf("Modem interrupt for IDLE wake-up.\n");
0001ac  e28f0008          ADR      r0,|L1.444|
0001b0  ebfffffe          BL       _printf
;;;81     }
0001b4  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
0001b8  e25ef004          SUBS     pc,lr,#4
                  |L1.444|
0001bc  65646f4d          DCB      "Mode"
0001c0  6e69206d          DCB      "m in"
0001c4  72726574          DCB      "terr"
0001c8  20747075          DCB      "upt "
0001cc  20726f66          DCB      "for "
0001d0  454c4449          DCB      "IDLE"
0001d4  6b617720          DCB      " wak"
0001d8  70752d65          DCB      "e-up"
0001dc  00000a2e          DCB      ".\n\0\0"
                          ENDP

                  Eint9IntHard PROC
;;;83     static void __irq Eint9IntHard(void)
;;;84     {
                  |L1.480|
0001e0  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;85         rEINTPEND=BIT_EINTPEND_EINT9;
0001e4  e3a00f80          MOV      r0,#0x200
0001e8  e51f116c          LDR      r1,|L1.132|
0001ec  e5810038          STR      r0,[r1,#0x38]
;;;86         ClearPending(BIT_EINT7_10);
0001f0  e3a00004          MOV      r0,#4
0001f4  e2411646          SUB      r1,r1,#0x4600000
0001f8  e5810000          STR      r0,[r1,#0]
0001fc  e1c10000          BIC      r0,r1,r0
000200  e5900010          LDR      r0,[r0,#0x10]
000204  e5810010          STR      r0,[r1,#0x10]
000208  e1a00001          MOV      r0,r1
00020c  e5900010          LDR      r0,[r0,#0x10]
;;;87     
;;;88         if(m_cnt<EINT9COUNT)
000210  e59f0054          LDR      r0,|L1.620|
000214  e5900000          LDR      r0,[r0,#0]  ; m_cnt
000218  e350000a          CMP      r0,#0xa
00021c  aa000009          BGE      |L1.584|
;;;89         {
;;;90     	m_cnt++;
000220  e59f0044          LDR      r0,|L1.620|
000224  e5900000          LDR      r0,[r0,#0]  ; m_cnt
000228  e2800001          ADD      r0,r0,#1
00022c  e59f1038          LDR      r1,|L1.620|
000230  e5810000          STR      r0,[r1,#0]  ; m_cnt
;;;91     	//if(m_cnt%10==0)Uart_Printf("#");
;;;92     	Uart_Printf("%d ",m_cnt);
000234  e59f0030          LDR      r0,|L1.620|
000238  e5901000          LDR      r1,[r0,#0]  ; m_cnt
00023c  e28f002c          ADR      r0,|L1.624|
000240  ebfffffe          BL       _printf
000244  ea000006          B        |L1.612|
;;;93         }
;;;94         else
;;;95         {
;;;96            	m_flag=0;
                  |L1.584|
000248  e3a00000          MOV      r0,#0
00024c  e59f1020          LDR      r1,|L1.628|
000250  e5810000          STR      r0,[r1,#0]  ; m_flag
;;;97     	Uart_Printf("\nEINT9 final Count=%d\n",m_cnt);
000254  e59f0010          LDR      r0,|L1.620|
000258  e5901000          LDR      r1,[r0,#0]  ; m_cnt
00025c  e28f0014          ADR      r0,|L1.632|
000260  ebfffffe          BL       _printf
;;;98         }
;;;99     }
                  |L1.612|
000264  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
000268  e25ef004          SUBS     pc,lr,#4
                  |L1.620|
00026c  00000000          DCD      ||.bss$2||
                  |L1.624|
000270  00206425          DCB      "%d \0"
                  |L1.628|
000274  00000004          DCD      ||.bss$2|| + 4
                  |L1.632|
000278  4e49450a          DCB      "\nEIN"
00027c  66203954          DCB      "T9 f"
000280  6c616e69          DCB      "inal"
000284  756f4320          DCB      " Cou"
000288  253d746e          DCB      "nt=%"
00028c  00000a64          DCB      "d\n\0\0"
                          ENDP

                  PenDownInt PROC
;;;101    static void __irq PenDownInt(void)
;;;102    {
                  |L1.656|
000290  e92d500f          STMFD    sp!,{r0-r3,r12,lr}
;;;103    //    rINTSUBMSK |= BIT_SUB_PENDN;
;;;104    //    rINTMSK |= BIT_ADC_PENUP_DOWN;
;;;105    
;;;106        rSUBSRCPND=BIT_SUB_PENDN;
000294  e3a00a40          MOV      r0,#0x40000
000298  e51f11d0          LDR      r1,|L1.208|
00029c  e5810018          STR      r0,[r1,#0x18]
;;;107        ClearPending(BIT_ADC_PENUP_DOWN);
0002a0  e3a00480          MOV      r0,#0x80000000
0002a4  e1c11000          BIC      r1,r1,r0
0002a8  e5810000          STR      r0,[r1,#0]
0002ac  e1c10000          BIC      r0,r1,r0
0002b0  e5900010          LDR      r0,[r0,#0x10]
0002b4  e5810010          STR      r0,[r1,#0x10]
0002b8  e1a00001          MOV      r0,r1
0002bc  e5900010          LDR      r0,[r0,#0x10]
;;;108        Uart_Printf("Touch screen pen-down interrupt for IDLE wake-up.\n");
0002c0  e28f0008          ADR      r0,|L1.720|
0002c4  ebfffffe          BL       _printf
;;;109    }
0002c8  e8bd500f          LDMFD    sp!,{r0-r3,r12,lr}
0002cc  e25ef004          SUBS     pc,lr,#4
                  |L1.720|
0002d0  63756f54          DCB      "Touc"
0002d4  63732068          DCB      "h sc"
0002d8  6e656572          DCB      "reen"
0002dc  6e657020          DCB      " pen"
0002e0  776f642d          DCB      "-dow"
0002e4  6e69206e          DCB      "n in"
0002e8  72726574          DCB      "terr"
0002ec  20747075          DCB      "upt "
0002f0  20726f66          DCB      "for "
0002f4  454c4449          DCB      "IDLE"
0002f8  6b617720          DCB      " wak"
0002fc  70752d65          DCB      "e-up"
000300  00000a2e          DCB      ".\n\0\0"
                          ENDP

                  SetAlarmWakeUp PROC
;;;111    void SetAlarmWakeUp(int sec)
;;;112    {
000304  e3a01001          MOV      r1,#1
;;;113        rRTCCON = 0x1;		// R/W enable, 1/32768, Normal(merge), No reset
000308  e59f21e4          LDR      r2,|L1.1268|

⌨️ 快捷键说明

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