📄 fio.lst
字号:
ARM COMPILER V2.53, fio 23/07/06 08:29:51 PAGE 1
ARM COMPILER V2.53, COMPILATION OF MODULE fio
OBJECT MODULE PLACED IN .\Obj\fio.obj
COMPILER INVOKED BY: g:\Keil\ARM\BIN\CA.exe fio.c THUMB INCDIR(..\Common\inc) DEBUG PRINT(.\LST\FIO.LST) TABS(4) OBJECT(
-.\Obj\fio.obj)
stmt level source
1 /*****************************************************************************
2 * fio.c: Fast I/O module file for Philips LPC214x Family Microprocessors
3 *
4 * Copyright(C) 2006, Philips Semiconductor
5 * All rights reserved.
6 *
7 * History
8 * 2005.10.01 ver 1.00 Prelimnary version, first Release
9 *
10 ******************************************************************************/
11 #include "LPC214x.H" /* LPC21xx definitions */
12 #include "type.h"
13 #include "irq.h"
14 #include "timer.h"
15 #include "fio.h"
16
17 /*****************************************************************************
18 ** Function name: GPIOInit
19 **
20 ** Descriptions: initialize GPIO port
21 **
22 ** parameters: port type, Fast I/O or regular GPIO
23 ** Returned value: None
24 **
25 *****************************************************************************/
26 void GPIOInit( DWORD PortType )
27 {
28 1 if ( PortType == FAST_PORT )
29 1 {
30 2 SCS |= (GPIO0M | GPIO1M); /* set GPIOx to use Fast I/O */
31 2 FIO1DIR = 0x00FF0000;
32 2 FIO1CLR = 0x00FF0000;
33 2 }
34 1 else
35 1 {
36 2 SCS = 0; /* set GPIOx to use regular I/O */
37 2 IODIR1 = 0x00FF0000; /* P1.16..23 defined as Outputs */
38 2 IOCLR1 = 0x00FF0000; /* turn off LEDs */
39 2 }
40 1 return;
41 1 }
42
43 /*********************************************************************************
44 ** End Of File
45 *********************************************************************************/
ARM COMPILER V2.53, fio 23/07/06 08:29:51 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
*** PUBLICS:
PUBLIC GPIOInit?T
*** CODE SEGMENT '?PR?GPIOInit?T?fio':
26: void GPIOInit( DWORD PortType )
00000000 1C01 MOV R1,R0 ; PortType
00000002 ---- Variable 'PortType' assigned to Register 'R1' ----
28: if ( PortType == FAST_PORT )
00000002 1C08 MOV R0,R1 ; PortType
00000004 2801 CMP R0,#0x1 ; PortType
00000006 D10A BNE L_1 ; T=0x0000001E
30: SCS |= (GPIO0M | GPIO1M); /* set GPIOx to use Fast I/O */
00000008 2203 MOV R2,#0x3
0000000A 4800 LDR R0,=0xE01FC1A0
0000000C 6801 LDR R1,[R0,#0x0]
0000000E 4311 ORR R1,R2
00000010 6001 STR R1,[R0,#0x0]
31: FIO1DIR = 0x00FF0000;
00000012 4800 LDR R1,=0xFF0000
00000014 4800 LDR R0,=0x3FFFC020
00000016 6001 STR R1,[R0,#0x0]
32: FIO1CLR = 0x00FF0000;
00000018 4800 LDR R0,=0x3FFFC03C
0000001A 6001 STR R1,[R0,#0x0]
33: }
0000001C E007 B L_2 ; T=0x0000002E
0000001E L_1:
36: SCS = 0; /* set GPIOx to use regular I/O */
0000001E 2100 MOV R1,#0x0
00000020 4800 LDR R0,=0xE01FC1A0
00000022 6001 STR R1,[R0,#0x0]
37: IODIR1 = 0x00FF0000; /* P1.16..23 defined as Outputs */
00000024 4800 LDR R1,=0xFF0000
00000026 4800 LDR R0,=0xE0028018
00000028 6001 STR R1,[R0,#0x0]
38: IOCLR1 = 0x00FF0000; /* turn off LEDs */
0000002A 4800 LDR R0,=0xE002801C
0000002C 6001 STR R1,[R0,#0x0]
39: }
0000002E L_2:
41: }
0000002E 4770 BX R14
00000030 ENDP ; 'GPIOInit?T'
Module Information Static
----------------------------------
code size = ------
data size = ------
const size = ------
End of Module Information.
ARM COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -