📄 main.lst
字号:
ARM COMPILER V2.54a, main 04/09/07 10:03:16 PAGE 1
ARM COMPILER V2.54a, COMPILATION OF MODULE main
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\ARM\BIN\CA.exe main.c THUMB BROWSE DEBUG TABS(4)
stmt level source
1 #include "config.h"
2 #include "lpclib.h"
3 #include<main.H>
4 //------------------------------------------------------------------------------------------
5 // 主函数
6 //int main (void)
7 //------------------------------------------------------------------------------------------
8 /***********************************************************
9 函数:主函数
10 void card_ok(void)
11 功能:程序从这里开始执行
12 ************************************************************/
13 int main()
14 {
15 1 TargetResetInit();
16 1 card_err ();
17 1 ram_init ();
18 1 stop_wr(); //关闭写卡驱动
19 1 ES0;
20 1 BPS=9600;
21 1 FLAG_CY=0;
22 1 FLAG_TRACK1=0; //1轨无效
23 1 FLAG_TRACK2=1; //2轨有效
24 1 FLAG_TRACK3=1; //3轨有效
25 1 FLAG_INCODE='a';//解码方式为ASCLL方式
26 1 RLED1; //关红灯
27 1 GLED1; //关绿灯
28 1 BEEP1; //蜂鸣关
29 1 FLAG_RSEND=0; //禁止重传数据//
30 1 Disable(); //模式为Disable();
31 1 ES1;
32 1 UART1_Init (BPS);
33 1 while(1)
34 1 {
35 2 if(FLAG_CMD)
36 2 {
37 3 command_excute();
38 3 }
39 2 if(FLAG_CY)
40 2 {
41 3 Rsend(); //重新上传数据
42 3 FLAG_CY=0;
43 3 }
44 2 }
45 1 }
46 /********************************************************************************************************
-*
47 ** End Of File
48 ********************************************************************************************************/
ARM COMPILER V2.54a, main 04/09/07 10:03:16 PAGE 2
ASSEMBLY LISTING OF GENERATED OBJECT CODE
*** EXTERNALS:
EXTERN DATA (FLAG_TRACK1)
EXTERN DATA (FLAG_TRACK2)
EXTERN DATA (FLAG_TRACK3)
EXTERN CODE16 (CLR_UART1_INT?T)
EXTERN CODE16 (EN_UART1_INT?T)
EXTERN CODE16 (UART1_Init?T)
EXTERN CODE16 (Beep_OFF?T)
EXTERN CODE16 (LED_ERR_OFF?T)
EXTERN CODE16 (LED_R_OFF?T)
EXTERN CODE16 (TargetResetInit?T)
EXTERN CODE16 (ram_init?T)
EXTERN CODE16 (stop_wr?T)
EXTERN CODE16 (Disable?T)
EXTERN CODE16 (card_err?T)
EXTERN CODE16 (command_excute?T)
EXTERN CODE16 (Rsend?T)
EXTERN DATA (FLAG_CY)
EXTERN DATA (BPS)
EXTERN DATA (FLAG_INCODE)
EXTERN DATA (FLAG_RSEND)
EXTERN DATA (FLAG_CMD)
EXTERN NUMBER (__startup)
*** PUBLICS:
PUBLIC main
*** CODE SEGMENT '?PR?main?main':
13: int main()
00000000 B500 PUSH {LR}
15: TargetResetInit();
00000002 F7FF BL TargetResetInit?T ; T=0x0001 (1)
00000004 FFFD BL TargetResetInit?T ; T=0x0001 (2)
16: card_err ();
00000006 F7FF BL card_err?T ; T=0x0001 (1)
00000008 FFFB BL card_err?T ; T=0x0001 (2)
17: ram_init ();
0000000A F7FF BL ram_init?T ; T=0x0001 (1)
0000000C FFF9 BL ram_init?T ; T=0x0001 (2)
18: stop_wr(); //关闭写卡驱动
0000000E F7FF BL stop_wr?T ; T=0x0001 (1)
00000010 FFF7 BL stop_wr?T ; T=0x0001 (2)
19: ES0;
00000012 F7FF BL CLR_UART1_INT?T ; T=0x0001 (1)
00000014 FFF5 BL CLR_UART1_INT?T ; T=0x0001 (2)
20: BPS=9600;
00000016 4800 LDR R1,=0x2580
00000018 4800 LDR R0,=BPS ; BPS
0000001A 6001 STR R1,[R0,#0x0] ; BPS
21: FLAG_CY=0;
0000001C 2400 MOV R4,#0x0
0000001E 4800 LDR R0,=FLAG_CY ; FLAG_CY
00000020 7004 STRB R4,[R0,#0x0] ; FLAG_CY
22: FLAG_TRACK1=0; //1轨无效
00000022 4800 LDR R0,=FLAG_TRACK1 ; FLAG_TRACK1
00000024 7004 STRB R4,[R0,#0x0] ; FLAG_TRACK1
23: FLAG_TRACK2=1; //2轨有效
00000026 2101 MOV R1,#0x1
00000028 4800 LDR R0,=FLAG_TRACK2 ; FLAG_TRACK2
0000002A 7001 STRB R1,[R0,#0x0] ; FLAG_TRACK2
24: FLAG_TRACK3=1; //3轨有效
0000002C 4800 LDR R0,=FLAG_TRACK3 ; FLAG_TRACK3
0000002E 7001 STRB R1,[R0,#0x0] ; FLAG_TRACK3
ARM COMPILER V2.54a, main 04/09/07 10:03:16 PAGE 3
25: FLAG_INCODE='a';//解码方式为ASCLL方式
00000030 2161 MOV R1,#0x61
00000032 4800 LDR R0,=FLAG_INCODE ; FLAG_INCODE
00000034 7001 STRB R1,[R0,#0x0] ; FLAG_INCODE
26: RLED1; //关红灯
00000036 F7FF BL LED_ERR_OFF?T ; T=0x0001 (1)
00000038 FFE3 BL LED_ERR_OFF?T ; T=0x0001 (2)
27: GLED1; //关绿灯
0000003A F7FF BL LED_R_OFF?T ; T=0x0001 (1)
0000003C FFE1 BL LED_R_OFF?T ; T=0x0001 (2)
28: BEEP1; //蜂鸣关
0000003E F7FF BL Beep_OFF?T ; T=0x0001 (1)
00000040 FFDF BL Beep_OFF?T ; T=0x0001 (2)
29: FLAG_RSEND=0; //禁止重传数据//
00000042 4800 LDR R0,=FLAG_RSEND ; FLAG_RSEND
00000044 7004 STRB R4,[R0,#0x0] ; FLAG_RSEND
30: Disable(); //模式为Disable();
00000046 F7FF BL Disable?T ; T=0x0001 (1)
00000048 FFDB BL Disable?T ; T=0x0001 (2)
31: ES1;
0000004A F7FF BL EN_UART1_INT?T ; T=0x0001 (1)
0000004C FFD9 BL EN_UART1_INT?T ; T=0x0001 (2)
32: UART1_Init (BPS);
0000004E 4800 LDR R0,=BPS ; BPS
00000050 6800 LDR R0,[R0,#0x0] ; BPS
00000052 F7FF BL UART1_Init?T ; T=0x0001 (1)
00000054 FFD5 BL UART1_Init?T ; T=0x0001 (2)
33: while(1)
00000056 L_3:
35: if(FLAG_CMD)
00000056 4800 LDR R0,=FLAG_CMD ; FLAG_CMD
00000058 7800 LDRB R0,[R0,#0x0] ; FLAG_CMD
0000005A 2800 CMP R0,#0x0
0000005C D001 BEQ L_5 ; T=0x00000062
37: command_excute();
0000005E F7FF BL command_excute?T ; T=0x0001 (1)
00000060 FFCF BL command_excute?T ; T=0x0001 (2)
38: }
00000062 L_5:
39: if(FLAG_CY)
00000062 4800 LDR R0,=FLAG_CY ; FLAG_CY
00000064 7800 LDRB R0,[R0,#0x0] ; FLAG_CY
00000066 2800 CMP R0,#0x0
00000068 D0F5 BEQ L_3 ; T=0x00000056
41: Rsend(); //重新上传数据
0000006A F7FF BL Rsend?T ; T=0x0001 (1)
0000006C FFC9 BL Rsend?T ; T=0x0001 (2)
42: FLAG_CY=0;
0000006E 2100 MOV R1,#0x0
00000070 4800 LDR R0,=FLAG_CY ; FLAG_CY
00000072 7001 STRB R1,[R0,#0x0] ; FLAG_CY
44: }
00000074 E7EF B L_3 ; T=0x00000056
45: }
00000076 BC08 POP {R3}
00000078 4718 BX R3
0000007A 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 + -