📄 test.lis
字号:
0340 FF27 clr R31
0342 EE0F lsl R30
0344 FF1F rol R31
0346 E80F add R30,R24
0348 F91F adc R31,R25
034A 2080 ldd R2,z+0
034C 3180 ldd R3,z+1
034E 4424 clr R4
0350 5524 clr R5
0352 6880 ldd R6,y+0
0354 7980 ldd R7,y+1
0356 8A80 ldd R8,y+2
0358 9B80 ldd R9,y+3
035A 620C add R6,R2
035C 731C adc R7,R3
035E 841C adc R8,R4
0360 951C adc R9,R5
0362 6882 std y+0,R6
0364 7982 std y+1,R7
0366 8A82 std y+2,R8
0368 9B82 std y+3,R9
036A .dbline 54
036A ; }
036A L62:
036A .dbline 50
036A C394 inc R12
036C L64:
036C .dbline 50
036C 8C2D mov R24,R12
036E 8E30 cpi R24,14
0370 98F2 brlo L61
0372 X14:
0372 .dbline 55
0372 ; adc/=15;
0372 4FE0 ldi R20,15
0374 50E0 ldi R21,0
0376 60E0 ldi R22,0
0378 70E0 ldi R23,0
037A 0881 ldd R16,y+0
037C 1981 ldd R17,y+1
037E 2A81 ldd R18,y+2
0380 3B81 ldd R19,y+3
0382 7A93 st -y,R23
0384 6A93 st -y,R22
0386 5A93 st -y,R21
0388 4A93 st -y,R20
038A 0E940000 xcall div32u
038E 0883 std y+0,R16
0390 1983 std y+1,R17
0392 2A83 std y+2,R18
0394 3B83 std y+3,R19
0396 .dbline 56
0396 ; adc_temp=adc;
0396 A880 ldd R10,y+0
0398 B980 ldd R11,y+1
039A .dbline 57
039A ; adc_out1=adc>>1;
039A 2880 ldd R2,y+0
039C 3980 ldd R3,y+1
039E 4A80 ldd R4,y+2
03A0 5B80 ldd R5,y+3
03A2 5694 lsr R5
03A4 4794 ror R4
03A6 3794 ror R3
03A8 2794 ror R2
03AA 30924300 sts _adc_out1+1,R3
03AE 20924200 sts _adc_out1,R2
03B2 .dbline 58
03B2 ; }
03B2 66C0 xjmp L59
03B4 L58:
03B4 .dbline 60
03B4 ; else
03B4 ; {
03B4 .dbline 61
03B4 ; adcfirst[1]=(adc_temp>>1)&0xfff;
03B4 C501 movw R24,R10
03B6 9695 lsr R25
03B8 8795 ror R24
03BA 9F70 andi R25,15
03BC 90930300 sts _adcfirst+2+1,R25
03C0 80930200 sts _adcfirst+2,R24
03C4 .dbline 62
03C4 ; adc_temp&=0x1ffc;
03C4 C501 movw R24,R10
03C6 8C7F andi R24,252
03C8 9F71 andi R25,31
03CA 5C01 movw R10,R24
03CC .dbline 63
03CC ; adc=adc_temp;
03CC 1C01 movw R2,R24
03CE 4424 clr R4
03D0 5524 clr R5
03D2 2882 std y+0,R2
03D4 3982 std y+1,R3
03D6 4A82 std y+2,R4
03D8 5B82 std y+3,R5
03DA .dbline 64
03DA ; adcttemp[1][14]=adc_temp;
03DA B0923F00 sts _adcttemp+30+28+1,R11
03DE A0923E00 sts _adcttemp+30+28,R10
03E2 .dbline 65
03E2 ; for(temp=0;temp<14;temp++)
03E2 CC24 clr R12
03E4 2AC0 xjmp L71
03E6 L68:
03E6 .dbline 66
03E6 ; {
03E6 .dbline 67
03E6 ; adcttemp[1][temp]=adcttemp[1][temp+1];
03E6 80E0 ldi R24,<_adcttemp+30
03E8 90E0 ldi R25,>_adcttemp+30
03EA EC2D mov R30,R12
03EC FF27 clr R31
03EE 3196 adiw R30,1
03F0 EE0F lsl R30
03F2 FF1F rol R31
03F4 E80F add R30,R24
03F6 F91F adc R31,R25
03F8 2080 ldd R2,z+0
03FA 3180 ldd R3,z+1
03FC EC2D mov R30,R12
03FE FF27 clr R31
0400 EE0F lsl R30
0402 FF1F rol R31
0404 E80F add R30,R24
0406 F91F adc R31,R25
0408 3182 std z+1,R3
040A 2082 std z+0,R2
040C .dbline 68
040C ; adc+=adcttemp[1][temp];
040C EC2D mov R30,R12
040E FF27 clr R31
0410 EE0F lsl R30
0412 FF1F rol R31
0414 E80F add R30,R24
0416 F91F adc R31,R25
0418 2080 ldd R2,z+0
041A 3180 ldd R3,z+1
041C 4424 clr R4
041E 5524 clr R5
0420 6880 ldd R6,y+0
0422 7980 ldd R7,y+1
0424 8A80 ldd R8,y+2
0426 9B80 ldd R9,y+3
0428 620C add R6,R2
042A 731C adc R7,R3
042C 841C adc R8,R4
042E 951C adc R9,R5
0430 6882 std y+0,R6
0432 7982 std y+1,R7
0434 8A82 std y+2,R8
0436 9B82 std y+3,R9
0438 .dbline 69
0438 ; }
0438 L69:
0438 .dbline 65
0438 C394 inc R12
043A L71:
043A .dbline 65
043A 8C2D mov R24,R12
043C 8E30 cpi R24,14
043E 98F2 brlo L68
0440 X15:
0440 .dbline 70
0440 ; adc/=15;
0440 4FE0 ldi R20,15
0442 50E0 ldi R21,0
0444 60E0 ldi R22,0
0446 70E0 ldi R23,0
0448 0881 ldd R16,y+0
044A 1981 ldd R17,y+1
044C 2A81 ldd R18,y+2
044E 3B81 ldd R19,y+3
0450 7A93 st -y,R23
0452 6A93 st -y,R22
0454 5A93 st -y,R21
0456 4A93 st -y,R20
0458 0E940000 xcall div32u
045C 0883 std y+0,R16
045E 1983 std y+1,R17
0460 2A83 std y+2,R18
0462 3B83 std y+3,R19
0464 .dbline 71
0464 ; adc_temp=adc;
0464 A880 ldd R10,y+0
0466 B980 ldd R11,y+1
0468 .dbline 72
0468 ; adc_out0=adc>>1;
0468 2880 ldd R2,y+0
046A 3980 ldd R3,y+1
046C 4A80 ldd R4,y+2
046E 5B80 ldd R5,y+3
0470 5694 lsr R5
0472 4794 ror R4
0474 3794 ror R3
0476 2794 ror R2
0478 30924100 sts _adc_out0+1,R3
047C 20924000 sts _adc_out0,R2
0480 .dbline 73
0480 ; }
0480 L59:
0480 .dbline -2
0480 L47:
0480 .dbline 0 ; func end
0480 2496 adiw R28,4
0482 0C940000 xjmp pop_xgsetF03C
0486 .dbsym l adc 0 l
0486 .dbsym r adc_temp 10 i
0486 .dbsym r temp 12 c
0486 .dbend
0486 .dbfile D:\iccavr\mega16\11\max144\test.c
0486 .dbfunc e mcu_init _mcu_init fV
.even
0486 _mcu_init::
0486 .dbline -1
0486 .dbline 14
0486 ; //ICC-AVR application builder : 2008-11-4 9:30:11
0486 ; // Target : M16
0486 ; // Crystal: 8Mhz
0486 ;
0486 ; #include <iom16v.h>
0486 ; #include <macros.h>
0486 ;
0486 ;
0486 ; #include "delay.h"
0486 ; #include "lcd1602.h"
0486 ; #include "max144.h"
0486 ;
0486 ; void mcu_init(void)
0486 ; {
0486 .dbline 15
0486 ; LCD_init();
0486 E6DD xcall _LCD_init
0488 .dbline -2
0488 L75:
0488 .dbline 0 ; func end
0488 0895 ret
048A .dbend
048A .dbfunc e main _main fV
.even
048A _main::
048A 2297 sbiw R28,2
048C .dbline -1
048C .dbline 19
048C ; }
048C ;
048C ; void main(void)
048C ; {
048C .dbline 20
048C ; mcu_init();
048C FCDF xcall _mcu_init
048E .dbline 22
048E ;
048E ; LCD_write_string(0,0," MAX144 TEST ");
048E 80E0 ldi R24,<L77
0490 90E0 ldi R25,>L77
0492 9983 std y+1,R25
0494 8883 std y+0,R24
0496 2227 clr R18
0498 0027 clr R16
049A 81DE xcall _LCD_write_string
049C 0AC0 xjmp L79
049E L78:
049E .dbline 24
049E ; while(1)
049E ; {
049E .dbline 25
049E ; max144_read();
049E EADE xcall _max144_read
04A0 .dbline 26
04A0 ; LCD_write_data(0,1,adc_out1);
04A0 20904200 lds R2,_adc_out1
04A4 30904300 lds R3,_adc_out1+1
04A8 3982 std y+1,R3
04AA 2882 std y+0,R2
04AC 21E0 ldi R18,1
04AE 0027 clr R16
04B0 8EDE xcall _LCD_write_data
04B2 .dbline 27
04B2 ; }
04B2 L79:
04B2 .dbline 23
04B2 F5CF xjmp L78
04B4 X17:
04B4 .dbline -2
04B4 L76:
04B4 .dbline 0 ; func end
04B4 2296 adiw R28,2
04B6 0895 ret
04B8 .dbend
.area bss(ram, con, rel)
0000 .dbfile D:\iccavr\mega16\11\max144\test.c
0000 _adcfirst::
0000 .blkb 4
0004 .dbfile D:\iccavr\mega16\11\max144\max144.h
0004 .dbsym e adcfirst _adcfirst A[4:2]i
0004 _adcttemp::
0004 .blkb 60
0040 .dbsym e adcttemp _adcttemp A[60:2:15]i
0040 _adc_out0::
0040 .blkb 2
0042 .dbsym e adc_out0 _adc_out0 i
0042 _adc_out1::
0042 .blkb 2
0044 .dbsym e adc_out1 _adc_out1 i
.area data(ram, con, rel)
0000 .dbfile D:\iccavr\mega16\11\max144\max144.h
0000 L77:
0000 .blkb 18
.area idata
0000 20204D41583134342054455354202020 .byte 32,32,'M,'A,'X,49,52,52,32,'T,'E,'S,'T,32,32,32
0010 2000 .byte 32,0
.area data(ram, con, rel)
0012 .dbfile D:\iccavr\mega16\11\max144\max144.h
0012 ; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -