📄 sangna.lst
字号:
364 01B0 2800 R JMP L71
364 01B1 0700 R MOV A,b0_1
364 01B2 0C02 XOR A,02h
364 01B3 3D0A SZ [0ah].2
364 01B4 2800 R JMP L72
364 01B5 0700 R MOV A,b0_1
364 01B6 0C03 XOR A,03h
364 01B7 3D0A SZ [0ah].2
文件:SANGNA.C 盛群编译器版本 2.86 页次15
364 01B8 2800 R JMP L73
364 01B9 2800 R JMP L69
364 01BA L70:
; 366: case 0 : DISP_SEL0=0;
366 01BA 3612 CLR [012H].4
; 367: break;
367 01BB 2800 R JMP L69
367 01BC L71:
; 368: case 1 : DISP_SEL1=0;
文件:SANGNA.c 盛群编译器版本 2.86 页次16
368 01BC 3712 CLR [012H].6
; 369: break;
369 01BD 2800 R JMP L69
369 01BE L72:
; 370: case 2 : DISP_SEL2=0;
370 01BE 3714 CLR [014H].6
; 371: break;
371 01BF 2800 R JMP L69
371 01C0 L73:
; 372: case 3 : DISP_SEL3=0;
372 01C0 3794 CLR [014H].7
372 01C1 L69:
372 01C1 L66:
; 378: _LedSequence++;
378 01C1 1480 R INC __LedSequence
; 379: if(_LedSequence>3)
379 01C2 0F03 MOV A,03h
379 01C3 0200 R SUB A,__LedSequence
379 01C4 3C0A SZ [0ah].0
379 01C5 2800 R JMP L74
; 381: _LedSequence=0;
381 01C6 1F00 R CLR __LedSequence
381 01C7 L74:
381 01C7 L1:
381 01C7 0700 E MOV A,VT1
381 01C8 0080 E MOV RH,A
381 01C9 0700 E MOV A,VT2
381 01CA 0080 E MOV T2,A
381 01CB 0700 E MOV A,VT3
381 01CC 0080 E MOV T3,A
381 01CD 0700 E MOV A,VT4
381 01CE 0080 E MOV T4,A
381 01CF 0700 E MOV A,VT5
381 01D0 0080 E MOV T5,A
381 01D1 0700 E MOV A,VT6
381 01D2 0080 E MOV T6,A
381 01D3 0700 E MOV A,VT7
381 01D4 0080 E MOV T7,A
381 01D5 0700 E MOV A,VT8
381 01D6 0080 E MOV T8,A
381 01D7 0700 E MOV A,VS
381 01D8 008A MOV [0AH],A
381 01D9 0700 E MOV A,VA
381 01DA 0004 RETI
381 01DB __Timer0ISR ENDP
381 0000 @_Timer0ISR .SECTION 'DATA'
381 0000 0002[ b0_1 DB 2 DUP(?)
文件:SANGNA.C 盛群编译器版本 2.86 页次16
00
]
; 169: unsigned long temp;
文件:SANGNA.c 盛群编译器版本 2.86 页次17
169 0002 0002[ CR1 DB 2 DUP (?) ; temp
00
]
; 167: unsigned char i;
167 0004 00 CR2 DB ? ; i
; 389: {
389 0000 @@_ADISR .SECTION AT 0cH 'CODE'
389 0000 2800 R JMP __ADISR
389 0000 @_ADISR .SECTION 'CODE'
389 0000 __ADISR PROC
389 0000 0080 E MOV VA,A
389 0001 070A MOV A,[0AH]
389 0002 0080 E MOV VS,A
389 0003 0700 E MOV A,RH
389 0004 0080 E MOV VT1,A
389 0005 0700 E MOV A,T2
389 0006 0080 E MOV VT2,A
389 0007 0700 E MOV A,T3
389 0008 0080 E MOV VT3,A
389 0009 0700 E MOV A,T4
389 000A 0080 E MOV VT4,A
389 000B 0700 E MOV A,T5
389 000C 0080 E MOV VT5,A
389 000D 0700 E MOV A,T6
389 000E 0080 E MOV VT6,A
389 000F 0700 E MOV A,T7
389 0010 0080 E MOV VT7,A
389 0011 0700 E MOV A,T8
389 0012 0080 E MOV VT8,A
; 394: temp=_adrh;
394 0013 0725 MOV A,__adrh
394 0014 0080 R MOV CR12,A
394 0015 1F00 R CLR CR12[1]
; 395: temp<<=1;
395 0016 340A CLR [0AH].0
395 0017 1A00 R RLCA CR12
395 0018 0080 R MOV b0_2,A
395 0019 1A00 R RLCA CR12[1]
395 001A 0080 R MOV b0_2[1],A
395 001B 0700 R MOV A,b0_2
395 001C 0080 R MOV CR12,A
395 001D 0700 R MOV A,b0_2[1]
395 001E 0080 R MOV CR12[1],A
; 396: if(_adrl&0x80)
396 001F 3BA4 SNZ __adrl.7
396 0020 2800 R JMP L88
; 398: temp++;
398 0021 1480 R INC CR12
398 0022 3D0A SZ [0AH].2
398 0023 1480 R INC CR12[1]
398 0024 L88:
; 401: _Rtemperature=100*temp;
文件:SANGNA.C 盛群编译器版本 2.86 页次17
文件:SANGNA.c 盛群编译器版本 2.86 页次18
401 0024 0700 R MOV A,CR12
401 0025 0080 E MOV T2,A
401 0026 0700 R MOV A,CR12[1]
401 0027 0080 E MOV RH,A
401 0028 0F00 MOV A,00h
401 0029 0080 E MOV T4,A
401 002A 0F64 MOV A,064h
401 002B 2000 E CALL MULL
401 002C 0080 R MOV __Rtemperature[1],A
401 002D 0700 E MOV A,T6
401 002E 0080 R MOV __Rtemperature,A
; 402: temp=512-temp;
402 002F 0F00 MOV A,00h
402 0030 0200 R SUB A,CR12
402 0031 0080 R MOV CR12,A
402 0032 0F02 MOV A,02h
402 0033 1200 R SBC A,CR12[1]
402 0034 0080 R MOV CR12[1],A
; 403: _Rtemperature/=temp;
403 0035 0700 R MOV A,CR12
403 0036 0080 E MOV T2,A
403 0037 0700 R MOV A,CR12[1]
403 0038 0080 E MOV RH,A
403 0039 0700 R MOV A,__Rtemperature[1]
403 003A 0080 E MOV T6,A
403 003B 0700 R MOV A,__Rtemperature
403 003C 2000 E CALL DIVUL
403 003D 0080 R MOV __Rtemperature,A
403 003E 0700 E MOV A,T6
403 003F 0080 R MOV __Rtemperature[1],A
; 404: _Rtemperature*=30;
404 0040 0700 R MOV A,__Rtemperature
404 0041 0080 E MOV T2,A
404 0042 0700 R MOV A,__Rtemperature[1]
404 0043 0080 E MOV RH,A
404 0044 0F00 MOV A,00h
404 0045 0080 E MOV T4,A
404 0046 0F1E MOV A,01eh
404 0047 2000 E CALL MULL
404 0048 0080 R MOV __Rtemperature[1],A
404 0049 0700 E MOV A,T6
404 004A 0080 R MOV __Rtemperature,A
; 406: if(_Rtemperature>20000)
406 004B 0F4E MOV A,04eh
406 004C 0200 R SUB A,__Rtemperature[1]
406 004D 380A SNZ [0ah].0
406 004E 2800 R JMP L104
406 004F 390A SNZ [0ah].2
406 0050 2800 R JMP L90
406 0051 0F20 MOV A,020h
406 0052 0200 R SUB A,__Rtemperature
406 0053 3C0A SZ [0ah].0
406 0054 2800 R JMP L90
406 0055 L104:
; 408: _CurrentTemperature=0xFF;
文件:SANGNA.c 盛群编译器版本 2.86 页次19
408 0055 0FFF MOV A,0ffh
408 0056 0080 R MOV __CurrentTemperature,A
408 0057 1F00 R CLR __CurrentTemperature[1]
; 409: }
文件:SANGNA.C 盛群编译器版本 2.86 页次18
409 0058 2800 R JMP L87
409 0059 L90:
; 410: else if(_Rtemperature<20)
410 0059 0700 R MOV A,__Rtemperature[1]
410 005A 0A00 SUB A,00h
410 005B 380A SNZ [0ah].0
410 005C 2800 R JMP L105
410 005D 390A SNZ [0ah].2
410 005E 2800 R JMP L92
410 005F 0700 R MOV A,__Rtemperature
410 0060 0A14 SUB A,014h
410 0061 3C0A SZ [0ah].0
410 0062 2800 R JMP L92
410 0063 L105:
; 412: _CurrentTemperature=0xF0;
412 0063 0FF0 MOV A,0f0h
412 0064 0080 R MOV __CurrentTemperature,A
412 0065 1F00 R CLR __CurrentTemperature[1]
; 413: }
413 0066 2800 R JMP L87
413 0067 L92:
; 416: i=69;
416 0067 0F45 MOV A,045h
416 0068 0080 R MOV CR13,A
; 417: j=0;
417 0069 1F00 R CLR CR14
417 006A L94:
; 421: temp=_TempTbl[(i+j)/2];
421 006A 0700 R MOV A,CR13
421 006B 0300 R ADD A,CR14
421 006C 0080 R MOV b0_2,A
421 006D 340A CLR [0AH].0
421 006E 1B80 R RRC b0_2
421 006F 340A CLR [0AH].0
421 0070 1A80 R RLC b0_2
421 0071 0F01 MOV A,1
421 0072 0300 R ADD A,b0_2
421 0073 0B00 R ADD A,OFFSET l__TempTbl
421 0074 0080 E MOV RH,A
421 0075 2000 R CALL l__TempTbl
421 0076 0080 R MOV CR12,A
421 0077 1400 E INCA RH
421 0078 2000 R CALL l__TempTbl
421 0079 0080 R MOV CR12[1],A
; 423: if(_Rtemperature<temp)
423 007A 0700 R MOV A,__Rtemperature[1]
文件:SANGNA.c 盛群编译器版本 2.86 页次20
423 007B 0200 R SUB A,CR12[1]
423 007C 380A SNZ [0ah].0
423 007D 2800 R JMP L106
423 007E 390A SNZ [0ah].2
423 007F 2800 R JMP L98
423 0080 0700 R MOV A,__Rtemperature
423 0081 0200 R SUB A,CR12
423 0082 3C0A SZ [0ah].0
423 0083 2800 R JMP L98
文件:SANGNA.C 盛群编译器版本 2.86 页次19
423 0084 L106:
; 425: if(j<(i-1))
425 0084 1500 R DECA CR13
425 0085 0080 R MOV b0_2,A
425 0086 0700 R MOV A,CR14
425 0087 0200 R SUB A,b0_2
425 0088 3C0A SZ [0ah].0
425 0089 2800 R JMP L96
; 427: j=(i+j)/2;
427 008A 0700 R MOV A,CR13
427 008B 0300 R ADD A,CR14
427 008C 0080 R MOV b0_2,A
427 008D 340A CLR [0AH].0
427 008E 1B00 R RRCA b0_2
427 008F 0080 R MOV CR14,A
; 428: continue;
428 0090 2800 R JMP L94
428 0091 L98:
; 438: if(j<(i-1))
438 0091 1500 R DECA CR13
438 0092 0080 R MOV b0_2,A
438 0093 0700 R MOV A,CR14
438 0094 0200 R SUB A,b0_2
438 0095 3C0A SZ [0ah].0
438 0096 2800 R JMP L96
; 440: i=(i+j)/2;
440 0097 0700 R MOV A,CR13
440 0098 0300 R ADD A,CR14
440 0099 0080 R MOV b0_2,A
440 009A 340A CLR [0AH].0
440 009B 1B00 R RRCA b0_2
440 009C 0080 R MOV CR13,A
; 419: for(;;)
419 009D 2800 R JMP L94
419 009E L96:
; 449: _CurrentTemperature=(i+j)/2;
449 009E 0700 R MOV A,CR13
449 009F 0300 R ADD A,CR14
449 00A0 0080 R MOV b0_2,A
449 00A1 340A CLR [0AH].0
449 00A2 1B80 R RRC b0_2
449 00A3 0700 R MOV A,b0_2
文件:SANGNA.c 盛群编译器版本 2.86 页次21
449 00A4 0080 R MOV __CurrentTemperature,A
449 00A5 1F00 R CLR __CurrentTemperature[1]
449 00A6 L87:
449 00A6 0700 E MOV A,VT1
449 00A7 0080 E MOV RH,A
449 00A8 0700 E MOV A,VT2
449 00A9 0080 E MOV T2,A
449 00AA 0700 E MOV A,VT3
449 00AB 0080 E MOV T3,A
449 00AC 0700 E MOV A,VT4
449 00AD 0080 E MOV T4,A
文件:SANGNA.C 盛群编译器版本 2.86 页次20
449 00AE 0700 E MOV A,VT5
449 00AF 0080 E MOV T5,A
449 00B0 0700 E MOV A,VT6
449 00B1 0080 E MOV T6,A
449 00B2 0700 E MOV A,VT7
449 00B3 0080 E MOV T7,A
449 00B4 0700 E MOV A,VT8
449 00B5 0080 E MOV T8,A
449 00B6 0700 E MOV A,VS
449 00B7 008A MOV [0AH],A
449 00B8 0700 E MOV A,VA
449 00B9 0004 RETI
449 00BA __ADISR ENDP
449 0000 @_ADISR .SECTION 'DATA'
449 0000 0002[ b0_2 DB 2 DUP(?)
00
]
449 0002 00 b1_2 DB ?
; 392: unsigned long temp;
392 0003 0002[ CR12 DB 2 DUP (?) ; temp
00
]
; 390: unsigned char i,j;
390 0005 00 CR13 DB ? ; i
390 0006 00 CR14 DB ? ; j
; 458: {
458 0000 @@_ExternISR .SECTION AT 04H 'CODE'
458 0000 2800 R JMP __ExternISR
458 0000 @_ExternISR .SECTION 'CODE'
458 0000 __ExternISR PROC
458 0000 0080 E MOV VA,A
458 0001 070A MOV A,[0AH]
458 0002 0080 E MOV VS,A
458 0003 L107:
458 0003 0700 E MOV A,VS
458 0004 008A MOV [0AH],A
458 0005 0700 E MOV A,VA
458 0006 0004 RETI
458 0007 __ExternISR ENDP
458 0000 @_ExternISR .SECTION 'DATA'
; 465: {
465 0000 @safeguard_init .SECTION 'CODE'
465 0000 PUBLIC _safeguard_init
文件:SANGNA.c 盛群编译器版本 2.86 页次22
465 0000 _safeguard_init PROC
; 466: _intc0 = 0x0D;
466 0000 0F0D MOV A,0dh
466 0001 008B MOV __intc0,A
; 468: _tmrc = 0x86; // fint=fsys(4M)/64
468 0002 0F86 MOV A,086h
468 0003 008E MOV __tmrc,A
; 469: _tmr = 4; // Tint=(1/fint)*250=4ms
469 0004 0F04 MOV A,04h
469 0005 008D MOV __tmr,A
; 471: _adcr=0x08; //AN0开启
文件:SANGNA.C 盛群编译器版本 2.86 页次21
471 0006 0F08 MOV A,08h
471 0007 00A6 MOV __adcr,A
; 473: _pac = 0x20; //pa7:0 | pa6:0 | pa5:1 | pa4:0 | pa3:0 | pa2:0 | pa1:0 | pa0:0
473 0008 0F20 MOV A,020h
473 0009 0093 MOV __pac,A
; 474: _pa = 0;
474 000A 1F12 CLR __pa
; 476: _pbc = 0x01; //pb7:0 | pb6:0 | pb5:0 | pb4:0 | pb3:0 | pb2:0 | pb1:0 | pb0:1
476 000B 0F01 MOV A,01h
476 000C 0095 MOV __pbc,A
; 477: _pb = 0;
477 000D 1F14 CLR __pb
; 479: _pcc = 0x00; //pc7:0 | pc6:0 | pc5:0 | pc4:0 | pc3:0 | pc2:0 | pc1:0 | pc0:0
479 000E 1F17 CLR __pcc
; 480: _pc = 0;
480 000F 1F16 CLR __pc
; 482: _pdc = 0x00; //pd7:0 | pd6:0 | pd5:0 | pd4:0 | pd3:0 | pd2:0 | pd1:0 | pd0:0
482 0010 1F19 CLR __pdc
; 483: _pd = 0;
483 0011 1F18 CLR __pd
483 0012 L108:
483 0012 0003 RET
483 0013 _safeguard_init ENDP
; 488: {
488 0000 @Start_I2C .SECTION 'CODE'
488 0000 PUBLIC _Start_I2C
488 0000 _Start_I2C PROC
; 489: SDA=1;
489 0000 3194 SET [014H].3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -