📄 uarttest.lst
字号:
ARM COMPILER V2.54a, uarttest 29/08/07 15:11:14 PAGE 1
ARM COMPILER V2.54a, COMPILATION OF MODULE uarttest
OBJECT MODULE PLACED IN .\Obj\uarttest.obj
COMPILER INVOKED BY: C:\Keil\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
16 extern DWORD UART0Count;
17 extern BYTE UART0Buffer[BUFSIZE];
18
19 /*****************************************************************************
20 ** Main Function main()
21 *****************************************************************************/
22 int main (void)
23 {
24 1 init_VIC();
25 1 UARTInit(115200); /* baud rate setting */
26 1
27 1 while (1)
28 1 { /* Loop forever */
29 2 if ( UART0Count != 0 )
30 2 {
31 3 U0IER = IER_THRE | IER_RLS; /* Disable RBR */
32 3 UARTSend( UART0Buffer, UART0Count );
33 3 UART0Count = 0;
34 3 U0IER = IER_THRE | IER_RLS | IER_RBR; /* Re-enable RBR */
35 3 }
36 2 }
37 1 // return 0;
38 1 }
39
40 /*****************************************************************************
41 ** End Of File
42 *****************************************************************************/
ARM COMPILER V2.54a, uarttest 29/08/07 15:11:14 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
*** EXTERNALS:
EXTERN CODE16 (init_VIC?T)
EXTERN CODE16 (UARTInit?T)
EXTERN CODE16 (UARTSend?T)
EXTERN DATA (UART0Count)
EXTERN DATA (UART0Buffer)
EXTERN NUMBER (__startup)
*** PUBLICS:
PUBLIC main
*** CODE SEGMENT '?PR?main?uarttest':
22: int main (void)
00000000 B500 PUSH {LR}
24: init_VIC();
00000002 F7FF BL init_VIC?T ; T=0x0001 (1)
00000004 FFFD BL init_VIC?T ; T=0x0001 (2)
25: UARTInit(115200); /* baud rate setting */
00000006 4800 LDR R0,=0x1C200
00000008 F7FF BL UARTInit?T ; T=0x0001 (1)
0000000A FFFA BL UARTInit?T ; T=0x0001 (2)
27: while (1)
0000000C L_3:
29: if ( UART0Count != 0 )
0000000C 4800 LDR R0,=UART0Count ; UART0Count
0000000E 6801 LDR R1,[R0,#0x0] ; UART0Count
00000010 2900 CMP R1,#0x0
00000012 D0FB BEQ L_3 ; T=0x0000000C
31: U0IER = IER_THRE | IER_RLS; /* Disable RBR */
00000014 2206 MOV R2,#0x6
00000016 4800 LDR R0,=0xE000C004
00000018 6002 STR R2,[R0,#0x0]
32: UARTSend( UART0Buffer, UART0Count );
0000001A 4800 LDR R0,=UART0Buffer ; UART0Buffer
0000001C F7FF BL UARTSend?T ; T=0x0001 (1)
0000001E FFF0 BL UARTSend?T ; T=0x0001 (2)
33: UART0Count = 0;
00000020 2100 MOV R1,#0x0
00000022 4800 LDR R0,=UART0Count ; UART0Count
00000024 6001 STR R1,[R0,#0x0] ; UART0Count
34: U0IER = IER_THRE | IER_RLS | IER_RBR; /* Re-enable RBR */
00000026 2107 MOV R1,#0x7
00000028 4800 LDR R0,=0xE000C004
0000002A 6001 STR R1,[R0,#0x0]
36: }
0000002C E7EE B L_3 ; T=0x0000000C
38: }
0000002E BC08 POP {R3}
00000030 4718 BX R3
00000032 ENDP ; 'main'
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 + -