📄 can_main.ls1
字号:
A51 MACRO ASSEMBLER CAN_MAIN 11/24/2006 12:29:26 PAGE 1
MACRO ASSEMBLER A51 V6.12
OBJECT MODULE PLACED IN CAN_MAIN.OBJ
ASSEMBLER INVOKED BY: D:\keil\C51\BIN\A51.EXE CAN_MAIN.src PR(.\CAN_MAIN.ls1) EP DEBUG
LOC OBJ LINE SOURCE
1 ; .\CAN_MAIN.SRC generated from: .\CAN_MAIN.c
2
3 $nomod51
4
5 NAME CAN_MAIN
6
0080 7 P0 DATA 080H
0090 8 P1 DATA 090H
00A0 9 P2 DATA 0A0H
00B0 10 P3 DATA 0B0H
00B4 11 T0 BIT 0B0H.4
00D6 12 AC BIT 0D0H.6
00B5 13 T1 BIT 0B0H.5
00AF 14 EA BIT 0A8H.7
00A8 15 IE DATA 0A8H
00B1 16 P3_1 BIT 0B0H.1
00B7 17 RD BIT 0B0H.7
00AC 18 ES BIT 0A8H.4
00B8 19 IP DATA 0B8H
0098 20 RI BIT 098H.0
00B2 21 INT0 BIT 0B0H.2
00D7 22 CY BIT 0D0H.7
0099 23 TI BIT 098H.1
00B3 24 INT1 BIT 0B0H.3
00BC 25 PS BIT 0B8H.4
0081 26 SP DATA 081H
00D2 27 OV BIT 0D0H.2
00B6 28 WR BIT 0B0H.6
0099 29 SBUF DATA 099H
0087 30 PCON DATA 087H
0098 31 SCON DATA 098H
0089 32 TMOD DATA 089H
0088 33 TCON DATA 088H
0089 34 IE0 BIT 088H.1
008B 35 IE1 BIT 088H.3
00F0 36 B DATA 0F0H
00E0 37 ACC DATA 0E0H
00A9 38 ET0 BIT 0A8H.1
00AB 39 ET1 BIT 0A8H.3
008D 40 TF0 BIT 088H.5
008F 41 TF1 BIT 088H.7
009A 42 RB8 BIT 098H.2
008C 43 TH0 DATA 08CH
00A8 44 EX0 BIT 0A8H.0
0088 45 IT0 BIT 088H.0
008D 46 TH1 DATA 08DH
009B 47 TB8 BIT 098H.3
00AA 48 EX1 BIT 0A8H.2
008A 49 IT1 BIT 088H.2
00D0 50 P BIT 0D0H.0
009F 51 SM0 BIT 098H.7
008A 52 TL0 DATA 08AH
009E 53 SM1 BIT 098H.6
008B 54 TL1 DATA 08BH
009D 55 SM2 BIT 098H.5
00B9 56 PT0 BIT 0B8H.1
00BB 57 PT1 BIT 0B8H.3
00D3 58 RS0 BIT 0D0H.3
A51 MACRO ASSEMBLER CAN_MAIN 11/24/2006 12:29:26 PAGE 2
008C 59 TR0 BIT 088H.4
00D4 60 RS1 BIT 0D0H.4
008E 61 TR1 BIT 088H.6
00B8 62 PX0 BIT 0B8H.0
00BA 63 PX1 BIT 0B8H.2
0083 64 DPH DATA 083H
0082 65 DPL DATA 082H
009C 66 REN BIT 098H.4
00B0 67 RXD BIT 0B0H.0
00B1 68 TXD BIT 0B0H.1
00D5 69 F0 BIT 0D0H.5
00D0 70 PSW DATA 0D0H
71 ?PR?main?CAN_MAIN SEGMENT CODE
72 ?PR?CAN_INI?CAN_MAIN SEGMENT CODE
73 ?PR?SEARCH?CAN_MAIN SEGMENT CODE
74 ?DT?CAN_MAIN SEGMENT DATA
75 EXTRN CODE (RCVDATA)
76 EXTRN CODE (REC_REMOTE)
77 EXTRN CODE (BERR)
78 EXTRN CODE (_in)
79 EXTRN CODE (_out)
80 EXTRN CODE (readdata)
81 EXTRN CODE (test)
82 EXTRN CODE (REC_DATA)
83 EXTRN CODE (ERR)
84 EXTRN CODE (TDATA)
85 EXTRN CODE (_delay)
86 EXTRN CODE (?C_STARTUP)
87 PUBLIC my_flag
88 PUBLIC a?
89 PUBLIC tuf
90 PUBLIC buf
91 PUBLIC SEARCH
92 PUBLIC CAN_INI
93 PUBLIC main
94
---- 95 RSEG ?DT?CAN_MAIN
0000 96 buf: DS 13
000D 97 tuf: DS 13
001A 98 a?: DS 1
001B 99 my_flag: DS 2
100 ; #include <reg51.h>
101 ; #include <head.h>
102 ; #include <out.h>
103 ; my_flag1 my_flag;
104 ; unsigned char buf[13];
105 ; unsigned char a;
106 ; unsigned char tuf[13];
107 ; CAN_INI();
108 ;
109 ;
110 ; delay(unsigned char a);
111 ;
112 ;
113 ; main()
114
---- 115 RSEG ?PR?main?CAN_MAIN
0000 116 main:
117 USING 0
118 ; SOURCE LINE # 14
119 ; {unsigned char i;
120 ; SOURCE LINE # 15
121 ; for (i=0;i<13;i++)
122 ; SOURCE LINE # 16
123 ;---- Variable 'i?040' assigned to Register 'R7' ----
0000 E4 124 CLR A
A51 MACRO ASSEMBLER CAN_MAIN 11/24/2006 12:29:26 PAGE 3
0001 FF 125 MOV R7,A
0002 126 ?C0001:
127 ; {buf[i]=0x0;
128 ; SOURCE LINE # 17
0002 7400 F 129 MOV A,#LOW (buf)
0004 2F 130 ADD A,R7
0005 F8 131 MOV R0,A
0006 E4 132 CLR A
0007 F6 133 MOV @R0,A
134 ; tuf[i]=0x0;}
135 ; SOURCE LINE # 18
0008 7400 F 136 MOV A,#LOW (tuf)
000A 2F 137 ADD A,R7
000B F8 138 MOV R0,A
000C E4 139 CLR A
000D F6 140 MOV @R0,A
000E 0F 141 INC R7
000F BF0DF0 142 CJNE R7,#0DH,?C0001
0012 143 ?C0002:
144 ; delay(0x02);
145 ; SOURCE LINE # 19
0012 7F02 146 MOV R7,#02H
0014 120000 F 147 LCALL _delay
148 ; SP=0x60;
149 ; SOURCE LINE # 20
0017 758160 150 MOV SP,#060H
151 ; P3_1=0;
152 ; SOURCE LINE # 21
001A C2B1 153 CLR P3_1
154 ; my_flag.value=0x0000;
155 ; SOURCE LINE # 22
001C E4 156 CLR A
001D F500 F 157 MOV my_flag,A
001F F500 F 158 MOV my_flag+01H,A
159 ; out(LED,0x20);
160 ; SOURCE LINE # 23
0021 7D20 161 MOV R5,#020H
0023 FF 162 MOV R7,A
0024 7E20 163 MOV R6,#020H
0026 120000 F 164 LCALL _out
165 ; CAN_INI();
166 ; SOURCE LINE # 24
0029 120000 F 167 LCALL CAN_INI
168 ; PX0=1;
169 ; SOURCE LINE # 25
002C D2B8 170 SETB PX0
171 ; EX0=1;
172 ; SOURCE LINE # 26
002E D2A8 173 SETB EX0
174 ; EA=1;
175 ; SOURCE LINE # 27
0030 D2AF 176 SETB EA
0032 177 ?C0004:
178 ; while(1)
179 ; SOURCE LINE # 28
180 ; {if (my_flag.flags.REC_REMOTE_FRAME)
181 ; SOURCE LINE # 29
0032 AF00 F 182 MOV R7,my_flag
0034 EF 183 MOV A,R7
0035 30E00A 184 JNB ACC.0,?C0006
185 ; {
186 ; SOURCE LINE # 30
187 ; my_flag.flags.REC_REMOTE_FRAME=0;
188 ; SOURCE LINE # 31
0038 AF00 F 189 MOV R7,my_flag
003A EF 190 MOV A,R7
A51 MACRO ASSEMBLER CAN_MAIN 11/24/2006 12:29:26 PAGE 4
003B 54FE 191 ANL A,#0FEH
003D F500 F 192 MOV my_flag,A
193 ; REC_REMOTE();
194 ; SOURCE LINE # 32
003F 120000 F 195 LCALL REC_REMOTE
196 ; }
197 ; SOURCE LINE # 33
0042 198 ?C0006:
199 ; if(my_flag.flags.REC_DATA_FRAME)
200 ; SOURCE LINE # 34
0042 AF00 F 201 MOV R7,my_flag
0044 EF 202 MOV A,R7
0045 C3 203 CLR C
0046 13 204 RRC A
0047 30E00A 205 JNB ACC.0,?C0007
206 ; {my_flag.flags.REC_DATA_FRAME=0;
207 ; SOURCE LINE # 35
004A AF00 F 208 MOV R7,my_flag
004C EF 209 MOV A,R7
004D 54FD 210 ANL A,#0FDH
004F F500 F 211 MOV my_flag,A
212 ; REC_DATA();
213 ; SOURCE LINE # 36
0051 120000 F 214 LCALL REC_DATA
215 ; }
216 ; SOURCE LINE # 37
0054 217 ?C0007:
218 ; if(my_flag.flags.ERR_FLAG)
219 ; SOURCE LINE # 38
0054 AF00 F 220 MOV R7,my_flag
0056 EF 221 MOV A,R7
0057 13 222 RRC A
0058 13 223 RRC A
0059 543F 224 ANL A,#03FH
005B 30E00A 225 JNB ACC.0,?C0008
226 ; {
227 ; SOURCE LINE # 39
228 ; my_flag.flags.ERR_FLAG=0;
229 ; SOURCE LINE # 40
005E AF00 F 230 MOV R7,my_flag
0060 EF 231 MOV A,R7
0061 54FB 232 ANL A,#0FBH
0063 F500 F 233 MOV my_flag,A
234 ; ERR();
235 ; SOURCE LINE # 41
0065 120000 F 236 LCALL ERR
237 ; }
238 ; SOURCE LINE # 42
0068 239 ?C0008:
240 ; if(my_flag.flags.BERR_FLAG)
241 ; SOURCE LINE # 43
0068 AF00 F 242 MOV R7,my_flag+01H
006A EF 243 MOV A,R7
006B 30E00A 244 JNB ACC.0,?C0009
245 ; {my_flag.flags.BERR_FLAG=0;
246 ; SOURCE LINE # 44
006E AF00 F 247 MOV R7,my_flag+01H
0070 EF 248 MOV A,R7
0071 54FE 249 ANL A,#0FEH
0073 F500 F 250 MOV my_flag+01H,A
251 ; BERR();
252 ; SOURCE LINE # 45
0075 120000 F 253 LCALL BERR
254 ; }
255 ; SOURCE LINE # 46
0078 256 ?C0009:
A51 MACRO ASSEMBLER CAN_MAIN 11/24/2006 12:29:26 PAGE 5
257 ; if(tuf[5]!=readdata())
258 ; SOURCE LINE # 47
0078 120000 F 259 LCALL readdata
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -