📄 test.lst
字号:
252 uchar dma_read_nodeid(uchar *ptr)
253 {
254 1 uchar idx;
255 1
256 1 SET_PAGE(0);
257 1
258 1 myoutportb(0x09,0x00); //RSAR1 DMA read high address
259 1 myoutportb(0x08,0x00); //RSAR0 DMA read low address
260 1 myoutportb(0x0b,0x00); //RBCR1 read count high address
261 1 myoutportb(0x0a,0x0c); //RBCR0 read count low address
262 1 myoutportb(0x00,0x0a); //DMA read and start
263 1
264 1 for(idx=0;idx<6;idx++)
265 1 {
266 2 ptr[idx]=myinportb(0x10);
267 2 myinportb(0x10);
268 2 }
269 1
270 1 return TRUE;
271 1 }
272
273 /**************************************************************/
274 uchar set_nodeid(uchar *ptr)
275 {
276 1 uchar idx;
277 1 SET_PAGE(1);
278 1
279 1 for(idx=0;idx<6;idx++)
280 1 {
281 2 myoutportb(PAR0+idx,ptr[idx]);
282 2 }
283 1
284 1 return TRUE;
285 1 }
286 /**************************************************************/
287
C51 COMPILER V7.09 TEST 03/27/2005 16:17:13 PAGE 6
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION _trans_str (BEGIN)
; SOURCE LINE # 34
0000 900000 R MOV DPTR,#str
0003 EB MOV A,R3
0004 F0 MOVX @DPTR,A
0005 A3 INC DPTR
0006 EA MOV A,R2
0007 F0 MOVX @DPTR,A
0008 A3 INC DPTR
0009 E9 MOV A,R1
000A F0 MOVX @DPTR,A
; SOURCE LINE # 35
; SOURCE LINE # 38
000B E4 CLR A
000C A3 INC DPTR
000D F0 MOVX @DPTR,A
000E ?C0001:
000E 900000 R MOV DPTR,#str
0011 E0 MOVX A,@DPTR
0012 FB MOV R3,A
0013 A3 INC DPTR
0014 E0 MOVX A,@DPTR
0015 FA MOV R2,A
0016 A3 INC DPTR
0017 E0 MOVX A,@DPTR
0018 F9 MOV R1,A
0019 120000 E LCALL _strlen
001C 900000 R MOV DPTR,#idx
001F E0 MOVX A,@DPTR
0020 C3 CLR C
0021 9F SUBB A,R7
0022 EE MOV A,R6
0023 6480 XRL A,#080H
0025 F8 MOV R0,A
0026 7480 MOV A,#080H
0028 98 SUBB A,R0
0029 5021 JNC ?C0004
; SOURCE LINE # 39
002B 900000 R MOV DPTR,#str
002E E0 MOVX A,@DPTR
002F FB MOV R3,A
0030 A3 INC DPTR
0031 E0 MOVX A,@DPTR
0032 FA MOV R2,A
0033 A3 INC DPTR
0034 E0 MOVX A,@DPTR
0035 F9 MOV R1,A
0036 A3 INC DPTR
0037 E0 MOVX A,@DPTR
0038 F582 MOV DPL,A
003A 758300 MOV DPH,#00H
003D 120000 E LCALL ?C?CLDOPTR
0040 FF MOV R7,A
0041 120000 R LCALL _trans_com
0044 900000 R MOV DPTR,#idx
0047 E0 MOVX A,@DPTR
0048 04 INC A
0049 F0 MOVX @DPTR,A
004A 80C2 SJMP ?C0001
C51 COMPILER V7.09 TEST 03/27/2005 16:17:13 PAGE 7
; SOURCE LINE # 40
004C ?C0004:
004C 22 RET
; FUNCTION _trans_str (END)
; FUNCTION delay (BEGIN)
; SOURCE LINE # 43
; SOURCE LINE # 44
; SOURCE LINE # 46
;---- Variable 'idx' assigned to Register 'R6/R7' ----
0000 E4 CLR A
0001 FF MOV R7,A
0002 FE MOV R6,A
0003 ?C0005:
0003 0F INC R7
0004 BF0001 CJNE R7,#00H,?C0040
0007 0E INC R6
0008 ?C0040:
0008 BE1FF8 CJNE R6,#01FH,?C0005
000B BFFFF5 CJNE R7,#0FFH,?C0005
; SOURCE LINE # 47
000E ?C0008:
000E 22 RET
; FUNCTION delay (END)
; FUNCTION main (BEGIN)
; SOURCE LINE # 50
; SOURCE LINE # 51
; SOURCE LINE # 55
0000 120000 R LCALL init_serial
; SOURCE LINE # 56
0003 7BFF MOV R3,#0FFH
0005 7A00 R MOV R2,#HIGH VERSION_STR
0007 7900 R MOV R1,#LOW VERSION_STR
0009 120000 R LCALL _trans_str
; SOURCE LINE # 59
000C D296 SETB RST
000E 120000 R LCALL delay
0011 C296 CLR RST
0013 120000 R LCALL delay
; SOURCE LINE # 86
0016 7B01 MOV R3,#01H
0018 7A00 R MOV R2,#HIGH nodeid
001A 7900 R MOV R1,#LOW nodeid
001C 120000 R LCALL _dma_read_nodeid
; SOURCE LINE # 87
001F 7BFF MOV R3,#0FFH
0021 7A00 R MOV R2,#HIGH ?SC_0
0023 7900 R MOV R1,#LOW ?SC_0
0025 120000 R LCALL _trans_str
; SOURCE LINE # 88
0028 E4 CLR A
0029 900000 R MOV DPTR,#idx
002C F0 MOVX @DPTR,A
002D A3 INC DPTR
002E F0 MOVX @DPTR,A
002F ?C0009:
; SOURCE LINE # 89
; SOURCE LINE # 90
002F 900000 R MOV DPTR,#idx+01H
0032 E0 MOVX A,@DPTR
0033 2400 R ADD A,#LOW nodeid
C51 COMPILER V7.09 TEST 03/27/2005 16:17:13 PAGE 8
0035 F582 MOV DPL,A
0037 E4 CLR A
0038 3400 R ADDC A,#HIGH nodeid
003A F583 MOV DPH,A
003C E0 MOVX A,@DPTR
003D FF MOV R7,A
003E 120000 R LCALL _trans_hex
; SOURCE LINE # 91
0041 900000 R MOV DPTR,#idx+01H
0044 E0 MOVX A,@DPTR
0045 04 INC A
0046 F0 MOVX @DPTR,A
0047 7006 JNZ ?C0041
0049 900000 R MOV DPTR,#idx
004C E0 MOVX A,@DPTR
004D 04 INC A
004E F0 MOVX @DPTR,A
004F ?C0041:
004F C3 CLR C
0050 900000 R MOV DPTR,#idx+01H
0053 E0 MOVX A,@DPTR
0054 9406 SUBB A,#06H
0056 900000 R MOV DPTR,#idx
0059 E0 MOVX A,@DPTR
005A 9400 SUBB A,#00H
005C 40D1 JC ?C0009
005E ?C0010:
; SOURCE LINE # 92
005E 7B01 MOV R3,#01H
0060 7A00 R MOV R2,#HIGH nodeid
0062 7900 R MOV R1,#LOW nodeid
0064 120000 R LCALL _set_nodeid
; SOURCE LINE # 93
0067 E4 CLR A
0068 FF MOV R7,A
0069 120000 R LCALL _map_io
006C 8F82 MOV DPL,R7
006E 8E83 MOV DPH,R6
0070 E0 MOVX A,@DPTR
0071 543F ANL A,#03FH
0073 FF MOV R7,A
0074 C007 PUSH AR7
0076 E4 CLR A
0077 FF MOV R7,A
0078 120000 R LCALL _map_io
007B 8F82 MOV DPL,R7
007D 8E83 MOV DPH,R6
007F D0E0 POP ACC
0081 F0 MOVX @DPTR,A
; SOURCE LINE # 95
0082 120000 E LCALL n2k_main
0085 ?C0012:
; SOURCE LINE # 144
0085 80FE SJMP ?C0012
; FUNCTION main (END)
; FUNCTION init_serial (BEGIN)
; SOURCE LINE # 148
; SOURCE LINE # 149
; SOURCE LINE # 150
0000 758922 MOV TMOD,#022H
; SOURCE LINE # 151
C51 COMPILER V7.09 TEST 03/27/2005 16:17:13 PAGE 9
0003 758DF4 MOV TH1,#0F4H
; SOURCE LINE # 152
0006 759850 MOV SCON,#050H
; SOURCE LINE # 153
0009 758780 MOV PCON,#080H
; SOURCE LINE # 154
000C D28E SETB TR1
; SOURCE LINE # 155
000E C299 CLR TI
; SOURCE LINE # 156
0010 C298 CLR RI
; SOURCE LINE # 159
0012 758C06 MOV TH0,#06H
; SOURCE LINE # 160
0015 758A06 MOV TL0,#06H
; SOURCE LINE # 161
0018 D2A9 SETB ET0
; SOURCE LINE # 162
001A D28C SETB TR0
; SOURCE LINE # 165
001C C2AF CLR EA
; SOURCE LINE # 166
001E 22 RET
; FUNCTION init_serial (END)
; FUNCTION _trans_com (BEGIN)
; SOURCE LINE # 169
;---- Variable 'byte' assigned to Register 'R7' ----
; SOURCE LINE # 170
; SOURCE LINE # 171
0000 8F99 MOV SBUF,R7
0002 ?C0016:
; SOURCE LINE # 172
0002 3099FD JNB TI,?C0016
0005 ?C0017:
; SOURCE LINE # 173
0005 C299 CLR TI
; SOURCE LINE # 174
0007 22 RET
; FUNCTION _trans_com (END)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -