📄 main.lst
字号:
###############################################################################
# #
# 18/Apr/2009 12:22:59 #
# IAR ARM ANSI C/C++ Compiler V5.11.0.30622/W32 KICKSTART #
# Copyright 1999-2007 IAR Systems. All rights reserved. #
# #
# Cpu mode = thumb #
# Endian = little #
# Source file = J:\IAR5\LPC2148_UART\src\main.c #
# Command line = J:\IAR5\LPC2148_UART\src\main.c -lCN #
# J:\IAR5\LPC2148_UART\Debug\List\ -o #
# J:\IAR5\LPC2148_UART\Debug\Obj\ --no_cse --no_unroll #
# --no_inline --no_code_motion --no_tbaa --no_clustering #
# --no_scheduling --debug --endian little --cpu #
# ARM7TDMI-S -e --fpu None --dlib_config "C:\Program #
# Files\IAR Systems\Embedded Workbench 5.0 #
# Kickstart\ARM\INC\DLib_Config_Normal.h" -I #
# J:\IAR5\LPC2148_UART\include\ -I "C:\Program Files\IAR #
# Systems\Embedded Workbench 5.0 Kickstart\ARM\INC\" #
# --interwork --cpu_mode thumb -Ol #
# List file = J:\IAR5\LPC2148_UART\Debug\List\main.lst #
# Object file = J:\IAR5\LPC2148_UART\Debug\Obj\main.o #
# #
# #
###############################################################################
J:\IAR5\LPC2148_UART\src\main.c
1 //main.c
2
3 #include <intrinsics.h>
4 #include "rs232.h"
5 #include "system.h"
6 #include "led.h"
7
\ In section .bss, align 1
8 unsigned char ch_1 = 0;
\ ch_1:
\ 00000000 DS8 1
\ In section .bss, align 1
9 unsigned char ch_2 = 0;
\ ch_2:
\ 00000000 DS8 1
10
\ In section .text, align 4, keep-with-next
11 void main() {
\ main:
\ 00000000 01B5 PUSH {R0,LR}
12 /**** 初始化 ****/
13 FrecInit(); // 频率初始化
\ 00000002 ........ BL FrecInit
14 UART0Initialize(9600); // UART0初始化
\ 00000006 9620 MOVS R0,#+150
\ 00000008 8001 LSLS R0,R0,#+6 ;; #+9600
\ 0000000A ........ BL UART0Initialize
15 UART1Initialize(9600); // UART1初始化
\ 0000000E 9620 MOVS R0,#+150
\ 00000010 8001 LSLS R0,R0,#+6 ;; #+9600
\ 00000012 ........ BL UART1Initialize
16
17 LedsInit();
\ 00000016 ........ BL LedsInit
18 Led1On();
\ 0000001A ........ BL Led1On
19
20 while(1) {
21
22 ch_1 = UART0ReadChar_nostop();
\ ??main_0:
\ 0000001E ........ BL UART0ReadChar_nostop
\ 00000022 1249 LDR R1,??main_1 ;; ch_1
\ 00000024 0870 STRB R0,[R1, #+0]
23 if(ch_1 != 0) { Led1Blink(); UART0WriteChar(ch_1); UART0WriteChar('*'); ch_1 = 0; }
\ 00000026 1148 LDR R0,??main_1 ;; ch_1
\ 00000028 0078 LDRB R0,[R0, #+0]
\ 0000002A 0028 CMP R0,#+0
\ 0000002C 0BD0 BEQ ??main_2
\ 0000002E ........ BL Led1Blink
\ 00000032 0E48 LDR R0,??main_1 ;; ch_1
\ 00000034 0078 LDRB R0,[R0, #+0]
\ 00000036 ........ BL UART0WriteChar
\ 0000003A 2A20 MOVS R0,#+42
\ 0000003C ........ BL UART0WriteChar
\ 00000040 0A48 LDR R0,??main_1 ;; ch_1
\ 00000042 0021 MOVS R1,#+0
\ 00000044 0170 STRB R1,[R0, #+0]
24 //rs232 - UART0
25
26 ch_2 = UART1ReadChar_nostop();
\ ??main_2:
\ 00000046 ........ BL UART1ReadChar_nostop
\ 0000004A 0949 LDR R1,??main_1+0x4 ;; ch_2
\ 0000004C 0870 STRB R0,[R1, #+0]
27 if(ch_2 != 0) { UART1WriteChar(ch_2); UART1WriteChar('*'); ch_2 = 0; }
\ 0000004E 0848 LDR R0,??main_1+0x4 ;; ch_2
\ 00000050 0078 LDRB R0,[R0, #+0]
\ 00000052 0028 CMP R0,#+0
\ 00000054 E3D0 BEQ ??main_0
\ 00000056 0648 LDR R0,??main_1+0x4 ;; ch_2
\ 00000058 0078 LDRB R0,[R0, #+0]
\ 0000005A ........ BL UART1WriteChar
\ 0000005E 2A20 MOVS R0,#+42
\ 00000060 ........ BL UART1WriteChar
\ 00000064 0248 LDR R0,??main_1+0x4 ;; ch_2
\ 00000066 0021 MOVS R1,#+0
\ 00000068 0170 STRB R1,[R0, #+0]
\ 0000006A D8E7 B ??main_0
\ ??main_1:
\ 0000006C ........ DC32 ch_1
\ 00000070 ........ DC32 ch_2
28 }
29
30
31 }
Maximum stack usage in bytes:
Function .cstack
-------- -------
main 8
Section sizes:
Function/Label Bytes
-------------- -----
ch_1 1
ch_2 1
main 116
2 bytes in section .bss
116 bytes in section .text
116 bytes of CODE memory
2 bytes of DATA memory
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -