📄 uarttest.lst
字号:
ARM COMPILER V2.53, uarttest 12/04/08 01:40:25 PAGE 1
ARM COMPILER V2.53, COMPILATION OF MODULE uarttest
OBJECT MODULE PLACED IN .\Obj\uarttest.obj
COMPILER INVOKED BY: D:\cx\ARM\BIN\CA.exe uarttest.c THUMB INCDIR(..\Common\inc) DEBUG PRINT(.\LST\UARTTEST.LST) TABS(4)
- OBJECT(.\Obj\uarttest.obj)
stmt level source
1 /*****************************************************************************
2 * uarttest.c: main C entry 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 "uart.h"
15 #include "lcd.h"
16
17 extern DWORD UART1Count;
18 extern uint8 UART1Buffer[BUFSIZE];
19
20 /*****************************************************************************
21 ** Main Function main()
22 *****************************************************************************/
23 int main (void)
24 {
25 1
26 1 init_VIC();
27 1 IO0DIR = 0xffffffff;
28 1 initLCD();
29 1 logo();
30 1 UARTInit(4800); /* baud rate setting */
31 1
32 1 while (1)
33 1 { /* Loop forever */
34 2 if ( UART1Count != 0 )
35 2 {
36 3 U1IER = IER_THRE | IER_RLS; /* Disable RBR */
37 3 UARTSend( UART1Buffer, UART1Count );
38 3 UART1Count = 0;
39 3 U1IER = IER_THRE | IER_RLS | IER_RBR; /* Re-enable RBR */
40 3 }
41 2 }
42 1 return 0;
43 1 }
44
45 /*****************************************************************************
46 ** End Of File
47 *****************************************************************************/
ARM COMPILER V2.53, uarttest 12/04/08 01:40:25 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
*** EXTERNALS:
EXTERN CODE16 (init_VIC?T)
EXTERN CODE16 (UARTInit?T)
EXTERN CODE16 (UARTSend?T)
EXTERN CODE16 (initLCD?T)
EXTERN CODE16 (logo?T)
EXTERN DATA (UART1Count)
EXTERN DATA (UART1Buffer)
EXTERN NUMBER (__startup)
*** PUBLICS:
PUBLIC main
*** CODE SEGMENT '?PR?main?uarttest':
23: int main (void)
00000000 B500 PUSH {LR}
26: init_VIC();
00000002 F7FF BL init_VIC?T ; T=0x0001 (1)
00000004 FFFD BL init_VIC?T ; T=0x0001 (2)
27: IO0DIR = 0xffffffff;
00000006 4800 LDR R1,=0xFFFFFFFF
00000008 4800 LDR R0,=0xE0028008
0000000A 6001 STR R1,[R0,#0x0]
28: initLCD();
0000000C F7FF BL initLCD?T ; T=0x0001 (1)
0000000E FFF8 BL initLCD?T ; T=0x0001 (2)
29: logo();
00000010 F7FF BL logo?T ; T=0x0001 (1)
00000012 FFF6 BL logo?T ; T=0x0001 (2)
30: UARTInit(4800); /* baud rate setting */
00000014 4800 LDR R0,=0x12C0
00000016 F7FF BL UARTInit?T ; T=0x0001 (1)
00000018 FFF3 BL UARTInit?T ; T=0x0001 (2)
32: while (1)
0000001A L_3:
34: if ( UART1Count != 0 )
0000001A 4800 LDR R0,=UART1Count ; UART1Count
0000001C 6801 LDR R1,[R0,#0x0] ; UART1Count
0000001E 2900 CMP R1,#0x0
00000020 D0FB BEQ L_3 ; T=0x0000001A
36: U1IER = IER_THRE | IER_RLS; /* Disable RBR */
00000022 2206 MOV R2,#0x6
00000024 4800 LDR R0,=0xE0010004
00000026 6002 STR R2,[R0,#0x0]
37: UARTSend( UART1Buffer, UART1Count );
00000028 4800 LDR R0,=UART1Buffer ; UART1Buffer
0000002A F7FF BL UARTSend?T ; T=0x0001 (1)
0000002C FFE9 BL UARTSend?T ; T=0x0001 (2)
38: UART1Count = 0;
0000002E 2100 MOV R1,#0x0
00000030 4800 LDR R0,=UART1Count ; UART1Count
00000032 6001 STR R1,[R0,#0x0] ; UART1Count
39: U1IER = IER_THRE | IER_RLS | IER_RBR; /* Re-enable RBR */
00000034 2107 MOV R1,#0x7
00000036 4800 LDR R0,=0xE0010004
00000038 6001 STR R1,[R0,#0x0]
41: }
0000003A E7EE B L_3 ; T=0x0000001A
43: }
0000003C BC08 POP {R3}
0000003E 4718 BX R3
00000040 ENDP ; 'main'
ARM COMPILER V2.53, uarttest 12/04/08 01:40:25 PAGE 3
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 + -