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

📄 nwait.txt

📁 SMDK2442所有设备的驱动测试程序。运行monitor程序
💻 TXT
📖 第 1 页 / 共 2 页
字号:
; generated by ARM C Compiler, ADS1.2 [Build 805]

; commandline [-errors .\err\nwait.err -O0 -asm -g+ -cpu ARM920T -fs "-IC:\Program Files\ARM\ADSv1_2\INCLUDE"]
                          CODE32

                          AREA ||.text||, CODE, READONLY

                  WaitRd8 PROC
;;;79     void WaitRd8(void)
;;;80     {
000000  e92d4038          STMFD    sp!,{r3-r5,lr}
;;;81         U8 readVal;
;;;82         int i;
;;;83     	
;;;84      	Uart_Printf("[nGCS4,8-bit,read,nWAIT Test].\n");
000004  e28f0090          ADR      r0,|L1.156|
000008  ebfffffe          BL       Uart_Printf
;;;85         rBWSCON=rBWSCON & ~(0xf<<16)|(BUS8<<16)|(ENWAIT<<18); //nGCS4 
00000c  e3a00448          MOV      r0,#0x48000000
000010  e5900000          LDR      r0,[r0,#0]
000014  e3c00af0          BIC      r0,r0,#0xf0000
000018  e3800a40          ORR      r0,r0,#0x40000
00001c  e3a01448          MOV      r1,#0x48000000
000020  e5810000          STR      r0,[r1,#0]
;;;86         rBANKCON4=((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC));
000024  e3a00f80          MOV      r0,#0x200
000028  e3a01448          MOV      r1,#0x48000000
00002c  e5810014          STR      r0,[r1,#0x14]
;;;87     
;;;88     	Uart_Printf("rBWSCON:%x\n", rBWSCON);
000030  e3a00448          MOV      r0,#0x48000000
000034  e5900000          LDR      r0,[r0,#0]
000038  e1a01000          MOV      r1,r0
00003c  e28f0078          ADR      r0,|L1.188|
000040  ebfffffe          BL       Uart_Printf
;;;89     	Uart_Printf("rBANKCON4:%x\n", rBANKCON4);
000044  e3a00448          MOV      r0,#0x48000000
000048  e5900014          LDR      r0,[r0,#0x14]
00004c  e1a01000          MOV      r1,r0
000050  e28f0070          ADR      r0,|L1.200|
000054  ebfffffe          BL       Uart_Printf
;;;90     	
;;;91         for(i=0;i<2;i++); //wait until the bank configuration is in effect.
000058  e3a04000          MOV      r4,#0
                  |L1.92|
00005c  e3540002          CMP      r4,#2
000060  aa000001          BGE      |L1.108|
000064  e2844001          ADD      r4,r4,#1
000068  eafffffb          B        |L1.92|
;;;92     
;;;93     	Uart_Printf("Press any key to stop...\n");
                  |L1.108|
00006c  e28f0064          ADR      r0,|L1.216|
000070  ebfffffe          BL       Uart_Printf
;;;94     	while(1) {
000074  e1a00000          NOP      
                  |L1.120|
000078  e1a00000          NOP      
;;;95     	    readVal=(*(volatile U8 *)CS_nGCS4);
00007c  e3a00580          MOV      r0,#0x20000000
000080  e5d05000          LDRB     r5,[r0,#0]
;;;96     		if(Uart_GetKey()!=0) break;
000084  ebfffffe          BL       Uart_GetKey
000088  e3500000          CMP      r0,#0
00008c  0a000000          BEQ      |L1.148|
000090  ea000000          B        |L1.152|
;;;97     	}
                  |L1.148|
000094  eafffff7          B        |L1.120|
;;;98         //readVal&=0xf;//data[3:0]
;;;99         //Uart_Printf("read_data=%x.\n",readVal);
;;;100    }
                  |L1.152|
000098  e8bd8038          LDMFD    sp!,{r3-r5,pc}
                  |L1.156|
00009c  43476e5b          DCB      "[nGC"
0000a0  382c3453          DCB      "S4,8"
0000a4  7469622d          DCB      "-bit"
0000a8  6165722c          DCB      ",rea"
0000ac  576e2c64          DCB      "d,nW"
0000b0  20544941          DCB      "AIT "
0000b4  74736554          DCB      "Test"
0000b8  000a2e5d          DCB      "].\n\0"
                  |L1.188|
0000bc  53574272          DCB      "rBWS"
0000c0  3a4e4f43          DCB      "CON:"
0000c4  000a7825          DCB      "%x\n\0"
                  |L1.200|
0000c8  4e414272          DCB      "rBAN"
0000cc  4e4f434b          DCB      "KCON"
0000d0  78253a34          DCB      "4:%x"
0000d4  0000000a          DCB      "\n\0\0\0"
                  |L1.216|
0000d8  73657250          DCB      "Pres"
0000dc  6e612073          DCB      "s an"
0000e0  656b2079          DCB      "y ke"
0000e4  6f742079          DCB      "y to"
0000e8  6f747320          DCB      " sto"
0000ec  2e2e2e70          DCB      "p..."
0000f0  0000000a          DCB      "\n\0\0\0"
                          ENDP

                  WaitWr8 PROC
;;;103    void WaitWr8(void)
;;;104    {
0000f4  e92d4010          STMFD    sp!,{r4,lr}
;;;105        int i;
;;;106    
;;;107        Uart_Printf("[nGCS4,8-bit,write,nWAIT Test].\n");
0000f8  e28f0094          ADR      r0,|L1.404|
0000fc  ebfffffe          BL       Uart_Printf
;;;108    
;;;109        rBWSCON=rBWSCON & ~(0xf<<16)|(BUS8<<16)|(ENWAIT<<18); //nGCS4 
000100  e3a00448          MOV      r0,#0x48000000
000104  e5900000          LDR      r0,[r0,#0]
000108  e3c00af0          BIC      r0,r0,#0xf0000
00010c  e3800a40          ORR      r0,r0,#0x40000
000110  e3a01448          MOV      r1,#0x48000000
000114  e5810000          STR      r0,[r1,#0]
;;;110        rBANKCON4=((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC));
000118  e3a00f80          MOV      r0,#0x200
00011c  e3a01448          MOV      r1,#0x48000000
000120  e5810014          STR      r0,[r1,#0x14]
;;;111    
;;;112    	Uart_Printf("rBWSCON:%x\n", rBWSCON);
000124  e3a00448          MOV      r0,#0x48000000
000128  e5900000          LDR      r0,[r0,#0]
00012c  e1a01000          MOV      r1,r0
000130  e24f007c          ADR      r0,|L1.188|
000134  ebfffffe          BL       Uart_Printf
;;;113    	Uart_Printf("rBANKCON4:%x\n", rBANKCON4);
000138  e3a00448          MOV      r0,#0x48000000
00013c  e5900014          LDR      r0,[r0,#0x14]
000140  e1a01000          MOV      r1,r0
000144  e24f0084          ADR      r0,|L1.200|
000148  ebfffffe          BL       Uart_Printf
;;;114    
;;;115    	for(i=0;i<2;i++); //wait until the bank configuration is in effect.
00014c  e3a04000          MOV      r4,#0
                  |L1.336|
000150  e3540002          CMP      r4,#2
000154  aa000001          BGE      |L1.352|
000158  e2844001          ADD      r4,r4,#1
00015c  eafffffb          B        |L1.336|
;;;116    
;;;117    	Uart_Printf("Press any key to stop...\n");
                  |L1.352|
000160  e24f0090          ADR      r0,|L1.216|
000164  ebfffffe          BL       Uart_Printf
;;;118    	while(1) {
000168  e1a00000          NOP      
                  |L1.364|
00016c  e1a00000          NOP      
;;;119    	    *((volatile U8 *)CS_nGCS4)=0;
000170  e3a00000          MOV      r0,#0
000174  e3a01580          MOV      r1,#0x20000000
000178  e5c10000          STRB     r0,[r1,#0]
;;;120    		if(Uart_GetKey()!=0) break;
00017c  ebfffffe          BL       Uart_GetKey
000180  e3500000          CMP      r0,#0
000184  0a000000          BEQ      |L1.396|
000188  ea000000          B        |L1.400|
;;;121    	}
                  |L1.396|
00018c  eafffff6          B        |L1.364|
;;;122    }
                  |L1.400|
000190  e8bd8010          LDMFD    sp!,{r4,pc}
                  |L1.404|
000194  43476e5b          DCB      "[nGC"
000198  382c3453          DCB      "S4,8"
00019c  7469622d          DCB      "-bit"
0001a0  6972772c          DCB      ",wri"
0001a4  6e2c6574          DCB      "te,n"
0001a8  54494157          DCB      "WAIT"
0001ac  73655420          DCB      " Tes"
0001b0  0a2e5d74          DCB      "t].\n"
0001b4  00000000          DCB      "\0\0\0\0"
                          ENDP

                  WaitRd16 PROC
;;;126    void WaitRd16(void)
;;;127    {
0001b8  e92d4038          STMFD    sp!,{r3-r5,lr}
;;;128        U16 readVal;
;;;129        int i;
;;;130    
;;;131        Uart_Printf("[nGCS4,16-bit,read,nWAIT Test].\n");
0001bc  e28f0090          ADR      r0,|L1.596|
0001c0  ebfffffe          BL       Uart_Printf
;;;132    
;;;133        rBWSCON=rBWSCON & ~(0xf<<16)|(BUS16<<16)|(ENWAIT<<18); //nGCS4 
0001c4  e3a00448          MOV      r0,#0x48000000
0001c8  e5900000          LDR      r0,[r0,#0]
0001cc  e3c00af0          BIC      r0,r0,#0xf0000
0001d0  e3800a50          ORR      r0,r0,#0x50000
0001d4  e3a01448          MOV      r1,#0x48000000
0001d8  e5810000          STR      r0,[r1,#0]
;;;134        rBANKCON4=((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC));
0001dc  e3a00f80          MOV      r0,#0x200
0001e0  e3a01448          MOV      r1,#0x48000000
0001e4  e5810014          STR      r0,[r1,#0x14]
;;;135    
;;;136    	Uart_Printf("rBWSCON:%x\n", rBWSCON);
0001e8  e3a00448          MOV      r0,#0x48000000
0001ec  e5900000          LDR      r0,[r0,#0]
0001f0  e1a01000          MOV      r1,r0
0001f4  e24f0f50          ADR      r0,|L1.188|
0001f8  ebfffffe          BL       Uart_Printf
;;;137    	Uart_Printf("rBANKCON4:%x\n", rBANKCON4);
0001fc  e3a00448          MOV      r0,#0x48000000
000200  e5900014          LDR      r0,[r0,#0x14]
000204  e1a01000          MOV      r1,r0
000208  e24f0f52          ADR      r0,|L1.200|
00020c  ebfffffe          BL       Uart_Printf
;;;138    	
;;;139        for(i=0;i<2;i++); //wait until the bank configuration is in effect.
000210  e3a04000          MOV      r4,#0
                  |L1.532|
000214  e3540002          CMP      r4,#2
000218  aa000001          BGE      |L1.548|
00021c  e2844001          ADD      r4,r4,#1
000220  eafffffb          B        |L1.532|
;;;140    
;;;141    	Uart_Printf("Press any key to stop...\n");
                  |L1.548|
000224  e24f0f55          ADR      r0,|L1.216|
000228  ebfffffe          BL       Uart_Printf
;;;142    	while(1) {
00022c  e1a00000          NOP      
                  |L1.560|
000230  e1a00000          NOP      
;;;143    	    readVal=(*(volatile U16 *)CS_nGCS4);
000234  e3a00580          MOV      r0,#0x20000000
000238  e1d050b0          LDRH     r5,[r0,#0]
;;;144    		if(Uart_GetKey()!=0) break;
00023c  ebfffffe          BL       Uart_GetKey
000240  e3500000          CMP      r0,#0
000244  0a000000          BEQ      |L1.588|
000248  ea000000          B        |L1.592|
;;;145    	}
                  |L1.588|
00024c  eafffff7          B        |L1.560|
;;;146        //readVal&=0xf;//data[3:0]
;;;147        //Uart_Printf("read_data=%x\n",readVal);
;;;148    }
                  |L1.592|
000250  e8bd8038          LDMFD    sp!,{r3-r5,pc}
                  |L1.596|
000254  43476e5b          DCB      "[nGC"
000258  312c3453          DCB      "S4,1"
00025c  69622d36          DCB      "6-bi"
000260  65722c74          DCB      "t,re"
000264  6e2c6461          DCB      "ad,n"
000268  54494157          DCB      "WAIT"
00026c  73655420          DCB      " Tes"
000270  0a2e5d74          DCB      "t].\n"
000274  00000000          DCB      "\0\0\0\0"
                          ENDP

                  WaitWr16 PROC
;;;151    void WaitWr16(void)
;;;152    {
000278  e92d4010          STMFD    sp!,{r4,lr}
;;;153        int i;
;;;154    
;;;155        Uart_Printf("[nGCS4,16-bit,write,nWAIT Test].\n");
00027c  e28f0094          ADR      r0,|L1.792|
000280  ebfffffe          BL       Uart_Printf
;;;156    
;;;157        rBWSCON=rBWSCON & ~(0xf<<16)|(BUS16<<16)|(ENWAIT<<18); //nGCS4 
000284  e3a00448          MOV      r0,#0x48000000
000288  e5900000          LDR      r0,[r0,#0]
00028c  e3c00af0          BIC      r0,r0,#0xf0000
000290  e3800a50          ORR      r0,r0,#0x50000
000294  e3a01448          MOV      r1,#0x48000000
000298  e5810000          STR      r0,[r1,#0]
;;;158        rBANKCON4=((B4_Tacs<<13)+(B4_Tcos<<11)+(B4_Tacc<<8)+(B4_Tcoh<<6)+(B4_Tah<<4)+(B4_Tacp<<2)+(B4_PMC));
00029c  e3a00f80          MOV      r0,#0x200
0002a0  e3a01448          MOV      r1,#0x48000000
0002a4  e5810014          STR      r0,[r1,#0x14]
;;;159        
;;;160        Uart_Printf("rBWSCON:%x\n", rBWSCON);
0002a8  e3a00448          MOV      r0,#0x48000000
0002ac  e5900000          LDR      r0,[r0,#0]
0002b0  e1a01000          MOV      r1,r0
0002b4  e24f0f80          ADR      r0,|L1.188|
0002b8  ebfffffe          BL       Uart_Printf
;;;161        Uart_Printf("rBANKCON4:%x\n", rBANKCON4);
0002bc  e3a00448          MOV      r0,#0x48000000
0002c0  e5900014          LDR      r0,[r0,#0x14]
0002c4  e1a01000          MOV      r1,r0
0002c8  e24f0f82          ADR      r0,|L1.200|
0002cc  ebfffffe          BL       Uart_Printf
;;;162    	
;;;163        for(i=0;i<2;i++); //wait until the bank configuration is in effect.
0002d0  e3a04000          MOV      r4,#0
                  |L1.724|
0002d4  e3540002          CMP      r4,#2
0002d8  aa000001          BGE      |L1.740|
0002dc  e2844001          ADD      r4,r4,#1
0002e0  eafffffb          B        |L1.724|
;;;164    
;;;165        Uart_Printf("Press any key to stop...\n");
                  |L1.740|
0002e4  e24f0f85          ADR      r0,|L1.216|
0002e8  ebfffffe          BL       Uart_Printf
;;;166        while(1) 
0002ec  e1a00000          NOP      
                  |L1.752|
0002f0  e1a00000          NOP      
;;;167        {
;;;168            *((volatile U16 *)CS_nGCS4)=0;
0002f4  e3a00000          MOV      r0,#0
0002f8  e3a01580          MOV      r1,#0x20000000
0002fc  e1c100b0          STRH     r0,[r1,#0]
;;;169            if(Uart_GetKey()!=0) 
000300  ebfffffe          BL       Uart_GetKey
000304  e3500000          CMP      r0,#0
000308  0a000000          BEQ      |L1.784|
;;;170        	    break;
00030c  ea000000          B        |L1.788|
;;;171        }
                  |L1.784|
000310  eafffff6          B        |L1.752|
;;;172    }
                  |L1.788|
000314  e8bd8010          LDMFD    sp!,{r4,pc}
                  |L1.792|
000318  43476e5b          DCB      "[nGC"
00031c  312c3453          DCB      "S4,1"
000320  69622d36          DCB      "6-bi"
000324  72772c74          DCB      "t,wr"
000328  2c657469          DCB      "ite,"
00032c  4941576e          DCB      "nWAI"
000330  65542054          DCB      "T Te"
000334  2e5d7473          DCB      "st]."
000338  0000000a          DCB      "\n\0\0\0"
                          ENDP

                  WaitRd32 PROC
;;;174    void WaitRd32(void)

⌨️ 快捷键说明

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