📄 main.lis
字号:
.module main.c
.area text(rom, con, rel)
0000 .dbfile D:\AVR\我的程序\流水灯和跑马灯实验/cfg.h
0000 .dbfunc e delay_ms _delay_ms fV
0000 ; i -> R20,R21
0000 ; time -> R16,R17
.even
0000 _delay_ms::
0000 0E940000 xcall push_gset1
0004 .dbline -1
0004 .dbline 10
0004 ; /***********************************
0004 ; *实验目的:熟悉I/O操作及流水等编程
0004 ; *设 计:萧联珠
0004 ; *日 期:2007-11-17
0004 ; ************************************/
0004 ; #include <iom16v.h>
0004 ; #include "cfg.h"
0004 ;
0004 ; void main()
0004 ; {
0004 .dbline 12
0004 ; port_init();
0004 ; while(1)
0004 0AC0 xjmp L5
0006 L2:
0006 .dbline 13
0006 4427 clr R20
0008 5527 clr R21
000A L6:
000A .dbline 13
000A L7:
000A .dbline 13
000A 4F5F subi R20,255 ; offset = 1
000C 5F4F sbci R21,255
000E .dbline 13
000E 483E cpi R20,232
0010 E3E0 ldi R30,3
0012 5E07 cpc R21,R30
0014 D4F3 brlt L6
0016 L3:
0016 .dbline 12
0016 0150 subi R16,1
0018 1040 sbci R17,0
001A L5:
001A .dbline 12
001A 2224 clr R2
001C 3324 clr R3
001E 2016 cp R2,R16
0020 3106 cpc R3,R17
0022 8CF3 brlt L2
0024 .dbline -2
0024 L1:
0024 0E940000 xcall pop_gset1
0028 .dbline 0 ; func end
0028 0895 ret
002A .dbsym r i 20 I
002A .dbsym r time 16 I
002A .dbend
002A .dbfunc e port_init _port_init fV
.even
002A _port_init::
002A .dbline -1
002A .dbline 18
002A ; {
002A ; display();
002A ; }
002A ; }
002A ;
002A ;
002A .dbline 19
002A ;
002A 8FEF ldi R24,255
002C 87BB out 0x17,R24
002E .dbline 20
002E ;
002E 88BB out 0x18,R24
0030 .dbline -2
0030 L10:
0030 .dbline 0 ; func end
0030 0895 ret
0032 .dbend
0032 .dbfunc e display _display fV
0032 ; index -> R20,R21
.even
0032 _display::
0032 0E940000 xcall push_gset1
0036 .dbline -1
0036 .dbline 25
0036 ;
0036 ;
0036 ;
0036 ;
0036 ;
0036 .dbline 27
0036 ;
0036 ;
0036 4427 clr R20
0038 5527 clr R21
003A L12:
003A .dbline 28
003A .dbline 29
003A 01E0 ldi R16,1
003C 10E0 ldi R17,0
003E 9A01 movw R18,R20
0040 0E940000 xcall lsl16
0044 1801 movw R2,R16
0046 2094 com R2
0048 3094 com R3
004A 28BA out 0x18,R2
004C .dbline 30
004C 04E6 ldi R16,100
004E 10E0 ldi R17,0
0050 D7DF xcall _delay_ms
0052 .dbline 31
0052 L13:
0052 .dbline 27
0052 4F5F subi R20,255 ; offset = 1
0054 5F4F sbci R21,255
0056 .dbline 27
0056 4830 cpi R20,8
0058 E0E0 ldi R30,0
005A 5E07 cpc R21,R30
005C 74F3 brlt L12
005E .dbline 32
005E ;
005E ;
005E ;
005E ;
005E ;
005E 48E0 ldi R20,8
0060 50E0 ldi R21,0
0062 L16:
0062 .dbline 33
0062 .dbline 34
0062 9A01 movw R18,R20
0064 2250 subi R18,2
0066 3040 sbci R19,0
0068 01E0 ldi R16,1
006A 10E0 ldi R17,0
006C 0E940000 xcall lsl16
0070 1801 movw R2,R16
0072 2094 com R2
0074 3094 com R3
0076 28BA out 0x18,R2
0078 .dbline 35
0078 04E6 ldi R16,100
007A 10E0 ldi R17,0
007C C1DF xcall _delay_ms
007E .dbline 36
007E L17:
007E .dbline 32
007E 4150 subi R20,1
0080 5040 sbci R21,0
0082 .dbline 32
0082 82E0 ldi R24,2
0084 90E0 ldi R25,0
0086 8417 cp R24,R20
0088 9507 cpc R25,R21
008A 5CF3 brlt L16
008C .dbline -2
008C L11:
008C 0E940000 xcall pop_gset1
0090 .dbline 0 ; func end
0090 0895 ret
0092 .dbsym r index 20 I
0092 .dbend
0092 .dbfile D:\AVR\我的程序\流水灯和跑马灯实验\main.c
0092 .dbfunc e main _main fV
.even
0092 _main::
0092 .dbline -1
0092 .dbline 10
0092 .dbline 11
0092 CBDF xcall _port_init
0094 01C0 xjmp L22
0096 L21:
0096 .dbline 13
0096 .dbline 14
0096 CDDF xcall _display
0098 .dbline 15
0098 L22:
0098 .dbline 12
0098 FECF xjmp L21
009A X0:
009A .dbline -2
009A L20:
009A .dbline 0 ; func end
009A 0895 ret
009C .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -