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

📄 adc.txt

📁 支持三星原产的S3C24A0开发板
💻 TXT
📖 第 1 页 / 共 5 页
字号:
0005bc  20202020          DCB      "    "
0005c0  202e3120          DCB      " 1. "
0005c4  746e6f43          DCB      "Cont"
0005c8  65756e69          DCB      "inue"
0005cc  2e2e2064          DCB      "d .."
0005d0  000a0a2e          DCB      ".\n\n\0"
                  |L1.1492|
0005d4  656c6553          DCB      "Sele"
0005d8  3a207463          DCB      "ct :"
0005dc  00000020          DCB      " \0\0\0"
                  |L1.1504|
0005e0  20656854          DCB      "The "
0005e4  5f434441          DCB      "ADC_"
0005e8  61204e49          DCB      "IN a"
0005ec  61206572          DCB      "re a"
0005f0  73756a64          DCB      "djus"
0005f4  20646574          DCB      "ted "
0005f8  74206f74          DCB      "to t"
0005fc  66206568          DCB      "he f"
000600  6f6c6c6f          DCB      "ollo"
000604  676e6977          DCB      "wing"
000608  6c617620          DCB      " val"
00060c  2e736575          DCB      "ues."
000610  0000000a          DCB      "\n\0\0\0"
                  |L1.1556|
000614  68737550          DCB      "Push"
000618  796e6120          DCB      " any"
00061c  79656b20          DCB      " key"
000620  206f7420          DCB      " to "
000624  74697865          DCB      "exit"
000628  0a212121          DCB      "!!!\n"
00062c  00000000          DCB      "\0\0\0\0"
                  |L1.1584|
000630  002625a0          DCD      0x002625a0
                  |L1.1588|
000634  20434441          DCB      "ADC "
000638  766e6f63          DCB      "conv"
00063c  7266202e          DCB      ". fr"
000640  202e7165          DCB      "eq. "
000644  6425203d          DCB      "= %d"
000648  000a7a48          DCB      "Hz\n\0"
                  |L1.1612|
00064c  53657270          DCB      "preS"
000650  656c6163          DCB      "cale"
000654  64253a72          DCB      "r:%d"
000658  0000000a          DCB      "\n\0\0\0"
                  |L1.1628|
00065c  4b4c4350          DCB      "PCLK"
000660  4344412f          DCB      "/ADC"
000664  4552465f          DCB      "_FRE"
000668  202d2051          DCB      "Q - "
00066c  203d2031          DCB      "1 = "
000670  000a6425          DCB      "%d\n\0"
                  |L1.1652|
000674  43444172          DCB      "rADC"
000678  3a4e4f43          DCB      "CON:"
00067c  000a7825          DCB      "%x\n\0"
                  |L1.1664|
000680  656c6553          DCB      "Sele"
000684  74207463          DCB      "ct t"
000688  63206568          DCB      "he c"
00068c  6e6e6168          DCB      "hann"
000690  305b6c65          DCB      "el[0"
000694  3a5d337e          DCB      "~3]:"
000698  0000000a          DCB      "\n\0\0\0"
                  |L1.1692|
00069c  e2844001          ADD      r4,r4,#1
0006a0  eaffffb6          B        |L1.1408|
;;;270    			value=ReadAdc(j);
                  |L1.1700|
0006a4  e59d001c          LDR      r0,[sp,#0x1c]
0006a8  ebfffffe          BL       ReadAdc
0006ac  e1a0b000          MOV      r11,r0
;;;271    			Uart_Printf("%04d\n", value);
0006b0  e1a0100b          MOV      r1,r11
0006b4  e28f0f4d          ADR      r0,|L1.2032|
0006b8  ebfffffe          BL       _printf
;;;272    		}
0006bc  eafffff6          B        |L1.1692|
;;;273    		Uart_Printf("Conversion is done!!\n");
                  |L1.1728|
0006c0  e28f0f4c          ADR      r0,|L1.2040|
0006c4  ebfffffe          BL       _printf
;;;274    		Uart_Printf("Press Enter key to exit, any key to continue\n");
0006c8  e28f0f50          ADR      r0,|L1.2064|
0006cc  ebfffffe          BL       _printf
;;;275    		if(Uart_Getch()=='\r') break;
0006d0  ebfffffe          BL       Uart_Getch
0006d4  e350000d          CMP      r0,#0xd
0006d8  1a000000          BNE      |L1.1760|
0006dc  ea000026          B        |L1.1916|
;;;276    	}
                  |L1.1760|
0006e0  eaffffa4          B        |L1.1400|
;;;277        }
;;;278        else if(key == 1)
                  |L1.1764|
0006e4  e59d0020          LDR      r0,[sp,#0x20]
0006e8  e3500001          CMP      r0,#1
0006ec  1a000022          BNE      |L1.1916|
;;;279        {
;;;280            while(Uart_GetKey()==0)
0006f0  e1a00000          NOP      
                  |L1.1780|
0006f4  ebfffffe          BL       Uart_GetKey
0006f8  e3500000          CMP      r0,#0
0006fc  1a00001e          BNE      |L1.1916|
;;;281            {
;;;282    	    a0=ReadAdc(0);
000700  e3a00000          MOV      r0,#0
000704  ebfffffe          BL       ReadAdc
000708  e58d0018          STR      r0,[sp,#0x18]
;;;283    	    a1=ReadAdc(1);
00070c  e3a00001          MOV      r0,#1
000710  ebfffffe          BL       ReadAdc
000714  e58d0014          STR      r0,[sp,#0x14]
;;;284    	    a2=ReadAdc(2);
000718  e3a00002          MOV      r0,#2
00071c  ebfffffe          BL       ReadAdc
000720  e1a05000          MOV      r5,r0
;;;285    	    a3=ReadAdc(3);
000724  e3a00003          MOV      r0,#3
000728  ebfffffe          BL       ReadAdc
00072c  e1a06000          MOV      r6,r0
;;;286    	    a4=ReadAdc(4);
000730  e3a00004          MOV      r0,#4
000734  ebfffffe          BL       ReadAdc
000738  e1a07000          MOV      r7,r0
;;;287    	    a5=ReadAdc(5);
00073c  e3a00005          MOV      r0,#5
000740  ebfffffe          BL       ReadAdc
000744  e1a08000          MOV      r8,r0
;;;288    	    a6=ReadAdc(6);
000748  e3a00006          MOV      r0,#6
00074c  ebfffffe          BL       ReadAdc
000750  e1a09000          MOV      r9,r0
;;;289    	    a7=ReadAdc(7);
000754  e3a00007          MOV      r0,#7
000758  ebfffffe          BL       ReadAdc
00075c  e1a0a000          MOV      r10,r0
;;;290    
;;;291    	    Uart_Printf("AIN0: %04d AIN1: %04d AIN2: %04d AIN3: %04d AIN4: %04d AIN5: %04d AIN6: %04d AIN7: %04d\n", a0,a1,a2,a3,a4,a5,a6,a7);
000760  e1a03005          MOV      r3,r5
000764  e88d07c0          STMIA    sp,{r6-r10}
000768  e59f00d0          LDR      r0,|L1.2112|
00076c  e59d1018          LDR      r1,[sp,#0x18]
000770  e59d2014          LDR      r2,[sp,#0x14]
000774  ebfffffe          BL       _printf
;;;292            }        
000778  eaffffdd          B        |L1.1780|
;;;293        }
;;;294    
;;;295    Uart_Printf("If you want to set stanbymode press any key\n");
                  |L1.1916|
00077c  e28f00c0          ADR      r0,|L1.2116|
000780  ebfffffe          BL       _printf
;;;296    Uart_Getch();
000784  ebfffffe          BL       Uart_Getch
;;;297    Uart_Printf("rADCCON:%x\n", rADCCON);
000788  e51f0420          LDR      r0,|L1.880|
00078c  e5900000          LDR      r0,[r0,#0]
000790  e1a01000          MOV      r1,r0
000794  e24f0f4a          ADR      r0,|L1.1652|
000798  ebfffffe          BL       _printf
;;;298        rADCCON=rADCCON|(1<<2);  //stand by mode to reduce power consumption	
00079c  e51f0434          LDR      r0,|L1.880|
0007a0  e5900000          LDR      r0,[r0,#0]
0007a4  e3800004          ORR      r0,r0,#4
0007a8  e51f1440          LDR      r1,|L1.880|
0007ac  e5810000          STR      r0,[r1,#0]
;;;299    
;;;300        Uart_Printf("\nrADCCON = 0x%x\n", rADCCON);
0007b0  e1a00001          MOV      r0,r1
0007b4  e5900000          LDR      r0,[r0,#0]
0007b8  e1a01000          MOV      r1,r0
0007bc  e28f00b0          ADR      r0,|L1.2164|
0007c0  ebfffffe          BL       _printf
;;;301        rINTSUBMSK|=(BIT_SUB_ADC|BIT_SUB_PENUP|BIT_SUB_PENDN);
0007c4  e51f074c          LDR      r0,|L1.128|
0007c8  e590001c          LDR      r0,[r0,#0x1c]
0007cc  e3800ae0          ORR      r0,r0,#0xe0000
0007d0  e51f1758          LDR      r1,|L1.128|
0007d4  e581001c          STR      r0,[r1,#0x1c]
;;;302        rINTMSK|=BIT_ADC_PENUP_DOWN;
0007d8  e1a00001          MOV      r0,r1
0007dc  e5900008          LDR      r0,[r0,#8]
0007e0  e3800480          ORR      r0,r0,#0x80000000
0007e4  e5810008          STR      r0,[r1,#8]
;;;303    	
;;;304    }
0007e8  e28dd024          ADD      sp,sp,#0x24
0007ec  e8bd8ff0          LDMFD    sp!,{r4-r11,pc}
                  |L1.2032|
0007f0  64343025          DCB      "%04d"
0007f4  0000000a          DCB      "\n\0\0\0"
                  |L1.2040|
0007f8  766e6f43          DCB      "Conv"
0007fc  69737265          DCB      "ersi"
000800  69206e6f          DCB      "on i"
000804  6f642073          DCB      "s do"
000808  2121656e          DCB      "ne!!"
00080c  0000000a          DCB      "\n\0\0\0"
                  |L1.2064|
000810  73657250          DCB      "Pres"
000814  6e452073          DCB      "s En"
000818  20726574          DCB      "ter "
00081c  2079656b          DCB      "key "
000820  65206f74          DCB      "to e"
000824  2c746978          DCB      "xit,"
000828  796e6120          DCB      " any"
00082c  79656b20          DCB      " key"
000830  206f7420          DCB      " to "
000834  746e6f63          DCB      "cont"
000838  65756e69          DCB      "inue"
00083c  0000000a          DCB      "\n\0\0\0"
                  |L1.2112|
000840  00000094          DCD      ||.constdata$1|| + 148
                  |L1.2116|
000844  79206649          DCB      "If y"
000848  7720756f          DCB      "ou w"
00084c  20746e61          DCB      "ant "
000850  73206f74          DCB      "to s"
000854  73207465          DCB      "et s"
000858  626e6174          DCB      "tanb"
00085c  646f6d79          DCB      "ymod"
000860  72702065          DCB      "e pr"
000864  20737365          DCB      "ess "
000868  20796e61          DCB      "any "
00086c  0a79656b          DCB      "key\n"
000870  00000000          DCB      "\0\0\0\0"
                  |L1.2164|
000874  4441720a          DCB      "\nrAD"
000878  4e4f4343          DCB      "CCON"
00087c  30203d20          DCB      " = 0"
000880  0a782578          DCB      "x%x\n"
000884  00000000          DCB      "\0\0\0\0"
                          ENDP

                  Test_Adc_Memory PROC
;;;307    void Test_Adc_Memory(void)
;;;308    {
000888  e92d40f8          STMFD    sp!,{r3-r7,lr}
;;;309        int i,key;
;;;310    
;;;311        unsigned int *dst, *tmp, ch;
;;;312    	
;;;313    
;;;314        dst = (unsigned int *)0x12000000;
00088c  e3a06548          MOV      r6,#0x12000000
;;;315    
;;;316        tmp = dst;
000890  e1a05006          MOV      r5,r6
;;;317    	
;;;318        for(i=0; i<REQCNT; i++)
000894  e3a04000          MOV      r4,#0
                  |L1.2200|
000898  e3540064          CMP      r4,#0x64
00089c  aa000005          BGE      |L1.2232|
0008a0  ea000001          B        |L1.2220|
                  |L1.2212|
0008a4  e2844001          ADD      r4,r4,#1
0008a8  eafffffa          B        |L1.2200|
;;;319    		*tmp++ = 0x0;
                  |L1.2220|
0008ac  e3a00000          MOV      r0,#0
0008b0  e4850004          STR      r0,[r5],#4
0008b4  eafffffa          B        |L1.2212|
;;;320    	
;;;321    	Uart_Printf("ADC conv. freq. = %dHz\n", ADC_FREQ);
                  |L1.2232|
0008b8  e51f1290          LDR      r1,|L1.1584|
0008bc  e24f0fa4          ADR      r0,|L1.1588|
0008c0  ebfffffe          BL       _printf
;;;322    	Uart_Printf("Select the channel[0~3]:\n");
0008c4  e24f0f93          ADR      r0,|L1.1664|
0008c8  ebfffffe          BL       _printf
;;;323    	ch=Uart_GetIntNum();
0008cc  ebfffffe          BL       Uart_GetIntNum
0008d0  e1a07000          MOV      r7,r0
;;;324    
;;;325    	while(1) {
0008d4  e1a00000          NOP      
                  |L1.2264|
0008d8  e1a00000          NOP      
;;;326    		preScaler = PCLK/ADC_FREQ -1;               //PCLK:50.7MHz
0008dc  e3a00013          MOV      r0,#0x13
0008e0  e51f135c          LDR      r1,|L1.1420|
0008e4  e5810000          STR      r0,[r1,#0]  ; preScaler
;;;327    		rADCCON = (1<<14)|(preScaler<<6)|(ch<<3);	//setup channel
0008e8  e51f0364          LDR      r0,|L1.1420|
0008ec  e5900000          LDR      r0,[r0,#0]  ; preScaler
0008f0  e1a00300          MOV      r0,r0,LSL #6
0008f4  e1800187          ORR      r0,r0,r7,LSL #3
0008f8  e3800c40          ORR      r0,r0,#0x4000
0008fc  e51f1594          LDR      r1,|L1.880|
000900  e5810000          STR      r0,[r1,#0]
;;;328    
;;;329    		tmp = dst;
000904  e1a05006          MOV      r5,r6
;;;330    		  
;;;331    		for(i=0;i<REQCNT;i++)                               //May 08, 2002 SOP
000908  e3a04000          MOV      r4,#0
                  |L1.2316|
00090c  e3540064          CMP      r4,#0x64
000910  aa000018          BGE      |L1.2424|
000914  ea000001          B        |L1.2336|
                  |L1.2328|
000918  e2844001          ADD      r4,r4,#1

⌨️ 快捷键说明

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