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

📄 led_test.txt

📁 矩阵LED ARM S3C2410程序~~C源代码~~
💻 TXT
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 919] for uVision
; commandline ArmCC [--debug -c --asm --interleave -o.\SDRAM\led_test.o --depend=.\SDRAM\led_test.d --device=DARMSS9 --apcs=interwork -O0 -I..\Common\Inc -I.\Include -IC:\Keil\ARM\INC\Samsung --omf_browse=.\SDRAM\led_test.crf Source\led_test.c]
                          ARM

                          AREA ||.text||, CODE, READONLY, ALIGN=2

                  led_on PROC
;;;28     	int i,nOut;
;;;29     	nOut = 0xFF;
000000  e3a010ff          MOV      r1,#0xff
;;;30     
;;;31     	rCPLDLEDADDR = nOut & 0xFE;
000004  e20120fe          AND      r2,r1,#0xfe
000008  e59f31b0          LDR      r3,|L1.448|
00000c  e5c32000          STRB     r2,[r3,#0]
;;;32     	for(i = 0; i < 100000; i++);
000010  e3a00000          MOV      r0,#0
000014  ea000000          B        |L1.28|
                  |L1.24|
000018  e2800001          ADD      r0,r0,#1
                  |L1.28|
00001c  e59f21a0          LDR      r2,|L1.452|
000020  e1500002          CMP      r0,r2
000024  bafffffb          BLT      |L1.24|
;;;33     	rCPLDLEDADDR = nOut & 0xFC;  
000028  e20120fc          AND      r2,r1,#0xfc
00002c  e59f318c          LDR      r3,|L1.448|
000030  e5c32000          STRB     r2,[r3,#0]
;;;34     	for(i = 0; i < 100000; i++);	
000034  e3a00000          MOV      r0,#0
000038  ea000000          B        |L1.64|
                  |L1.60|
00003c  e2800001          ADD      r0,r0,#1
                  |L1.64|
000040  e59f217c          LDR      r2,|L1.452|
000044  e1500002          CMP      r0,r2
000048  bafffffb          BLT      |L1.60|
;;;35     	rCPLDLEDADDR = nOut & 0xF8;   
00004c  e20120f8          AND      r2,r1,#0xf8
000050  e59f3168          LDR      r3,|L1.448|
000054  e5c32000          STRB     r2,[r3,#0]
;;;36     	for(i = 0; i < 100000; i++);	
000058  e3a00000          MOV      r0,#0
00005c  ea000000          B        |L1.100|
                  |L1.96|
000060  e2800001          ADD      r0,r0,#1
                  |L1.100|
000064  e59f2158          LDR      r2,|L1.452|
000068  e1500002          CMP      r0,r2
00006c  bafffffb          BLT      |L1.96|
;;;37     	rCPLDLEDADDR = nOut & 0xF0;  
000070  e20120f0          AND      r2,r1,#0xf0
000074  e59f3144          LDR      r3,|L1.448|
000078  e5c32000          STRB     r2,[r3,#0]
;;;38     	for(i = 0; i < 100000; i++);
00007c  e3a00000          MOV      r0,#0
000080  ea000000          B        |L1.136|
                  |L1.132|
000084  e2800001          ADD      r0,r0,#1
                  |L1.136|
000088  e59f2134          LDR      r2,|L1.452|
00008c  e1500002          CMP      r0,r2
000090  bafffffb          BLT      |L1.132|
;;;39     
;;;40     }
000094  e12fff1e          BX       lr
;;;41     
                          ENDP

                  led_off PROC
;;;52     	int i,nOut;	
;;;53     	nOut = 0xF0;	
000098  e3a010f0          MOV      r1,#0xf0
;;;54     	rCPLDLEDADDR = nOut | 0x01;
00009c  e3812001          ORR      r2,r1,#1
0000a0  e59f3118          LDR      r3,|L1.448|
0000a4  e5c32000          STRB     r2,[r3,#0]
;;;55     	for(i = 0; i < 100000; i++);	
0000a8  e3a00000          MOV      r0,#0
0000ac  ea000000          B        |L1.180|
                  |L1.176|
0000b0  e2800001          ADD      r0,r0,#1
                  |L1.180|
0000b4  e59f2108          LDR      r2,|L1.452|
0000b8  e1500002          CMP      r0,r2
0000bc  bafffffb          BLT      |L1.176|
;;;56     	rCPLDLEDADDR = nOut | 0x03; 
0000c0  e20120ff          AND      r2,r1,#0xff
0000c4  e3822003          ORR      r2,r2,#3
0000c8  e59f30f0          LDR      r3,|L1.448|
0000cc  e5c32000          STRB     r2,[r3,#0]
;;;57     	for(i = 0; i < 100000; i++);	
0000d0  e3a00000          MOV      r0,#0
0000d4  ea000000          B        |L1.220|
                  |L1.216|
0000d8  e2800001          ADD      r0,r0,#1
                  |L1.220|
0000dc  e59f20e0          LDR      r2,|L1.452|
0000e0  e1500002          CMP      r0,r2
0000e4  bafffffb          BLT      |L1.216|
;;;58     	rCPLDLEDADDR = nOut | 0x07; 
0000e8  e20120ff          AND      r2,r1,#0xff
0000ec  e3822007          ORR      r2,r2,#7
0000f0  e59f30c8          LDR      r3,|L1.448|
0000f4  e5c32000          STRB     r2,[r3,#0]
;;;59     	for(i = 0; i < 100000; i++);	
0000f8  e3a00000          MOV      r0,#0
0000fc  ea000000          B        |L1.260|
                  |L1.256|
000100  e2800001          ADD      r0,r0,#1
                  |L1.260|
000104  e59f20b8          LDR      r2,|L1.452|
000108  e1500002          CMP      r0,r2
00010c  bafffffb          BLT      |L1.256|
;;;60     	rCPLDLEDADDR = nOut | 0x0F; 
000110  e20120ff          AND      r2,r1,#0xff
000114  e382200f          ORR      r2,r2,#0xf
000118  e59f30a0          LDR      r3,|L1.448|
00011c  e5c32000          STRB     r2,[r3,#0]
;;;61     	for(i = 0; i < 100000; i++);
000120  e3a00000          MOV      r0,#0
000124  ea000000          B        |L1.300|
                  |L1.296|
000128  e2800001          ADD      r0,r0,#1
                  |L1.300|
00012c  e59f2090          LDR      r2,|L1.452|
000130  e1500002          CMP      r0,r2
000134  bafffffb          BLT      |L1.296|
;;;62     }
000138  e12fff1e          BX       lr
;;;63     
                          ENDP

                  led_on_off PROC
;;;74     	int i;	
;;;75     	rCPLDLEDADDR = 0xF0;
00013c  e3a010f0          MOV      r1,#0xf0
000140  e59f2078          LDR      r2,|L1.448|
000144  e5c21000          STRB     r1,[r2,#0]
;;;76     	for(i = 0; i < 100000; i++);
000148  e3a00000          MOV      r0,#0
00014c  ea000000          B        |L1.340|
                  |L1.336|
000150  e2800001          ADD      r0,r0,#1
                  |L1.340|
000154  e59f1068          LDR      r1,|L1.452|
000158  e1500001          CMP      r0,r1
00015c  bafffffb          BLT      |L1.336|
;;;77     	rCPLDLEDADDR = 0xFF;
000160  e3a010ff          MOV      r1,#0xff
000164  e59f2054          LDR      r2,|L1.448|
000168  e5c21000          STRB     r1,[r2,#0]
;;;78     	for(i = 0; i < 100000; i++);		
00016c  e3a00000          MOV      r0,#0
000170  ea000000          B        |L1.376|
                  |L1.372|
000174  e2800001          ADD      r0,r0,#1
                  |L1.376|
000178  e59f1044          LDR      r1,|L1.452|
00017c  e1500001          CMP      r0,r1
000180  bafffffb          BLT      |L1.372|
;;;79     }
000184  e12fff1e          BX       lr
;;;80     
                          ENDP

                  led_test PROC
;;;89     void led_test(void)
;;;90     {
000188  e92d4010          PUSH     {r4,lr}
;;;91     
;;;92     	uart_printf("\n Expand I/O (Diode Led) Test Example\n");
00018c  e28f0034          ADR      r0,|L1.456|
000190  ebfffffe          BL       uart_printf
;;;93     	uart_printf(" Please Look At The LEDS \n");
000194  e28f0054          ADR      r0,|L1.496|
000198  ebfffffe          BL       uart_printf
;;;94     	led_on();
00019c  ebfffffe          BL       led_on
;;;95     	led_off();
0001a0  ebfffffe          BL       led_off
;;;96     	led_on_off();
0001a4  ebfffffe          BL       led_on_off
;;;97     	delay(2000);
0001a8  e3a00e7d          MOV      r0,#0x7d0
0001ac  ebfffffe          BL       delay
;;;98     	uart_printf(" End.\n");
0001b0  e28f0054          ADR      r0,|L1.524|
0001b4  ebfffffe          BL       uart_printf
;;;99     }
0001b8  e8bd4010          POP      {r4,lr}
0001bc  e12fff1e          BX       lr
                          ENDP

                  |L1.448|
0001c0  21180000          DCD      0x21180000
                  |L1.452|
0001c4  000186a0          DCD      0x000186a0
                  |L1.456|
0001c8  0a204578          DCB      "\n\40\105\170"
0001cc  70616e64          DCB      "pand"
0001d0  20492f4f          DCB      " I/O"
0001d4  20284469          DCB      " (Di"
0001d8  6f646520          DCB      "ode "
0001dc  4c656429          DCB      "Led)"
0001e0  20546573          DCB      " Tes"
0001e4  74204578          DCB      "t Ex"
0001e8  616d706c          DCB      "ampl"
0001ec  650a0000          DCB      "e\n\0\0"
                  |L1.496|
0001f0  20506c65          DCB      " Ple"
0001f4  61736520          DCB      "ase "
0001f8  4c6f6f6b          DCB      "Look"
0001fc  20417420          DCB      " At "
000200  54686520          DCB      "The "
000204  4c454453          DCB      "LEDS"
000208  200a0000          DCB      " \n\0\0"
                  |L1.524|
00020c  20456e64          DCB      " End"
000210  2e0a0000          DCB      ".\n\0\0"

⌨️ 快捷键说明

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