📄 main.lis
字号:
0112 ; }
0112 ; }
0112 ; }
0112 ; }
0112 ; }
0112 ; }
0112 ; }
0112 ; }
0112 .dbline 126
0112 ; }
0112 ; }
0112 4423 tst R20
0114 19F4 brne L22
0116 .dbline 126
0116 462F mov R20,R22
0118 4058 subi R20,128 ; addi 128
011A 02C0 xjmp L23
011C L22:
011C .dbline 127
011C ; }
011C 462F mov R20,R22
011E 4054 subi R20,64 ; addi 192
0120 L23:
0120 .dbline 128
0120 ; }
0120 042F mov R16,R20
0122 B3DF xcall _LCD_write_command
0124 .dbline -2
0124 L21:
0124 0E940000 xcall pop_gset2
0128 .dbline 0 ; func end
0128 0895 ret
012A .dbsym r address 20 c
012A .dbsym r y 20 c
012A .dbsym r x 22 c
012A .dbend
012A .dbfunc e LCD_write_string _LCD_write_string fV
012A ; s -> R20,R21
012A ; Y -> R10
012A ; X -> R22
.even
012A _LCD_write_string::
012A 0E940000 xcall push_gset3
012E A22E mov R10,R18
0130 602F mov R22,R16
0132 4E81 ldd R20,y+6
0134 5F81 ldd R21,y+7
0136 .dbline -1
0136 .dbline 132
0136 ; }
0136 ; }
0136 ; }
0136 ; }
0136 .dbline 133
0136 ; }
0136 2A2D mov R18,R10
0138 062F mov R16,R22
013A E7DF xcall _LCD_set_xy
013C 05C0 xjmp L26
013E L25:
013E .dbline 135
013E .dbline 136
013E FA01 movw R30,R20
0140 0081 ldd R16,z+0
0142 C3DF xcall _LCD_write_data
0144 .dbline 137
0144 4F5F subi R20,255 ; offset = 1
0146 5F4F sbci R21,255
0148 .dbline 138
0148 L26:
0148 .dbline 134
0148 ; }
0148 FA01 movw R30,R20
014A 2080 ldd R2,z+0
014C 2220 tst R2
014E B9F7 brne L25
0150 .dbline -2
0150 L24:
0150 0E940000 xcall pop_gset3
0154 .dbline 0 ; func end
0154 0895 ret
0156 .dbsym r s 20 pc
0156 .dbsym r Y 10 c
0156 .dbsym r X 22 c
0156 .dbend
0156 .dbfunc e LCD_write_char _LCD_write_char fV
0156 ; data -> y+4
0156 ; Y -> R22
0156 ; X -> R20
.even
0156 _LCD_write_char::
0156 0E940000 xcall push_gset2
015A 622F mov R22,R18
015C 402F mov R20,R16
015E .dbline -1
015E .dbline 143
015E ; }
015E ; }
015E ; }
015E ; }
015E ; }
015E ; }
015E ; }
015E ; }
015E ; }
015E .dbline 144
015E ; }
015E 262F mov R18,R22
0160 042F mov R16,R20
0162 D3DF xcall _LCD_set_xy
0164 .dbline 145
0164 ; }
0164 0C81 ldd R16,y+4
0166 B1DF xcall _LCD_write_data
0168 .dbline -2
0168 L28:
0168 0E940000 xcall pop_gset2
016C .dbline 0 ; func end
016C 0895 ret
016E .dbsym l data 4 c
016E .dbsym r Y 22 c
016E .dbsym r X 20 c
016E .dbend
.area data(ram, con, rel)
0000 .dbfile D:\avr\+++精华+++\+M16范例+\定时器/1602.h
0000 _data::
0000 .blkb 2
.area idata
0000 0000 .byte 0,0
.area data(ram, con, rel)
0002 .dbfile D:\avr\+++精华+++\+M16范例+\定时器/1602.h
0002 .blkb 2
.area idata
0002 0000 .byte 0,0
.area data(ram, con, rel)
0004 .dbfile D:\avr\+++精华+++\+M16范例+\定时器/1602.h
0004 .blkb 1
.area idata
0004 00 .byte 0
.area data(ram, con, rel)
0005 .dbfile D:\avr\+++精华+++\+M16范例+\定时器/1602.h
0005 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
0005 .dbsym e data _data A[5:5]c
0005 _cnt::
0005 .blkb 2
.area idata
0005 0000 .word 0
.area data(ram, con, rel)
0007 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
0007 .dbsym e cnt _cnt i
0007 _timer::
0007 .blkb 2
.area idata
0007 0000 .byte 0,0
.area data(ram, con, rel)
0009 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
0009 .dbsym e timer _timer A[2:2]c
.area text(rom, con, rel)
016E .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
016E .dbfunc e process _process fV
016E ; p -> R20,R21
016E ; i -> R22,R23
.even
016E _process::
016E 0E940000 xcall push_gset2
0172 A901 movw R20,R18
0174 B801 movw R22,R16
0176 .dbline -1
0176 .dbline 30
0176 .dbline 30
0176 1AE0 ldi R17,10
0178 FB01 movw R30,R22
017A 0081 ldd R16,z+0
017C 0E940000 xcall div8u
0180 802F mov R24,R16
0182 805D subi R24,208 ; addi 48
0184 FA01 movw R30,R20
0186 8083 std z+0,R24
0188 .dbline 31
0188 1AE0 ldi R17,10
018A FB01 movw R30,R22
018C 0081 ldd R16,z+0
018E 0E940000 xcall mod8u
0192 802F mov R24,R16
0194 805D subi R24,208 ; addi 48
0196 FA01 movw R30,R20
0198 8183 std z+1,R24
019A .dbline 33
019A 1AE0 ldi R17,10
019C FB01 movw R30,R22
019E 0181 ldd R16,z+1
01A0 0E940000 xcall div8u
01A4 802F mov R24,R16
01A6 805D subi R24,208 ; addi 48
01A8 FA01 movw R30,R20
01AA 8283 std z+2,R24
01AC .dbline 34
01AC 1AE0 ldi R17,10
01AE FB01 movw R30,R22
01B0 0181 ldd R16,z+1
01B2 0E940000 xcall mod8u
01B6 802F mov R24,R16
01B8 805D subi R24,208 ; addi 48
01BA FA01 movw R30,R20
01BC 8383 std z+3,R24
01BE .dbline -2
01BE L29:
01BE 0E940000 xcall pop_gset2
01C2 .dbline 0 ; func end
01C2 0895 ret
01C4 .dbsym r p 20 pc
01C4 .dbsym r i 22 pc
01C4 .dbend
01C4 .dbfunc e lcd _lcd fV
.even
01C4 _lcd::
01C4 2297 sbiw R28,2
01C6 .dbline -1
01C6 .dbline 41
01C6 .dbline 42
01C6 80E0 ldi R24,<L31
01C8 90E0 ldi R25,>L31
01CA 9983 std y+1,R25
01CC 8883 std y+0,R24
01CE 2227 clr R18
01D0 02E0 ldi R16,2
01D2 ABDF xcall _LCD_write_string
01D4 .dbline 43
01D4 20900000 lds R2,_data
01D8 2882 std y+0,R2
01DA 21E0 ldi R18,1
01DC 06E0 ldi R16,6
01DE BBDF xcall _LCD_write_char
01E0 .dbline 44
01E0 20900100 lds R2,_data+1
01E4 2882 std y+0,R2
01E6 21E0 ldi R18,1
01E8 07E0 ldi R16,7
01EA B5DF xcall _LCD_write_char
01EC .dbline 45
01EC 8AE3 ldi R24,58
01EE 8883 std y+0,R24
01F0 21E0 ldi R18,1
01F2 08E0 ldi R16,8
01F4 B0DF xcall _LCD_write_char
01F6 .dbline 46
01F6 20900200 lds R2,_data+2
01FA 2882 std y+0,R2
01FC 21E0 ldi R18,1
01FE 09E0 ldi R16,9
0200 AADF xcall _LCD_write_char
0202 .dbline 47
0202 20900300 lds R2,_data+3
0206 2882 std y+0,R2
0208 21E0 ldi R18,1
020A 0AE0 ldi R16,10
020C A4DF xcall _LCD_write_char
020E .dbline -2
020E L30:
020E 2296 adiw R28,2
0210 .dbline 0 ; func end
0210 0895 ret
0212 .dbend
.area vector(rom, abs)
.org 36
0024 0C940901 jmp _Timer0
.area text(rom, con, rel)
0212 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
0212 .dbfunc e Timer0 _Timer0 fV
.even
0212 _Timer0::
0212 2A92 st -y,R2
0214 3A92 st -y,R3
0216 8A93 st -y,R24
0218 9A93 st -y,R25
021A EA93 st -y,R30
021C 2FB6 in R2,0x3f
021E 2A92 st -y,R2
0220 .dbline -1
0220 .dbline 53
0220 .dbline 53
0220 80910500 lds R24,_cnt
0224 90910600 lds R25,_cnt+1
0228 0196 adiw R24,1
022A 90930600 sts _cnt+1,R25
022E 80930500 sts _cnt,R24
0232 .dbline 54
0232 823C cpi R24,194
0234 E1E0 ldi R30,1
0236 9E07 cpc R25,R30
0238 D9F4 brne L36
023A .dbline 55
023A .dbline 55
023A 2224 clr R2
023C 3324 clr R3
023E 30920600 sts _cnt+1,R3
0242 20920500 sts _cnt,R2
0246 .dbline 56
0246 80910800 lds R24,_timer+1
024A 8F5F subi R24,255 ; addi 1
024C 80930800 sts _timer+1,R24
0250 .dbline 57
0250 8C33 cpi R24,60
0252 39F4 brne L39
0254 .dbline 57
0254 .dbline 57
0254 20920800 sts _timer+1,R2
0258 .dbline 57
0258 80910700 lds R24,_timer
025C 8F5F subi R24,255 ; addi 1
025E 80930700 sts _timer,R24
0262 .dbline 57
0262 L39:
0262 .dbline 58
0262 80910700 lds R24,_timer
0266 8C33 cpi R24,60
0268 19F4 brne L43
026A .dbline 58
026A .dbline 58
026A 2224 clr R2
026C 20920700 sts _timer,R2
0270 .dbline 58
0270 L43:
0270 .dbline 59
0270 L36:
0270 .dbline -2
0270 L35:
0270 2990 ld R2,y+
0272 2FBE out 0x3f,R2
0274 E991 ld R30,y+
0276 9991 ld R25,y+
0278 8991 ld R24,y+
027A 3990 ld R3,y+
027C 2990 ld R2,y+
027E .dbline 0 ; func end
027E 1895 reti
0280 .dbend
0280 .dbfunc e init _init fV
.even
0280 _init::
0280 .dbline -1
0280 .dbline 66
0280 .dbline 67
0280 E9DE xcall _LCD_init
0282 .dbline 68
0282 7894 sei
0284 .dbline 69
0284 83E0 ldi R24,3
0286 83BF out 0x33,R24
0288 .dbline 70
0288 2224 clr R2
028A 22BE out 0x32,R2
028C .dbline 71
028C 81E0 ldi R24,1
028E 89BF out 0x39,R24
0290 .dbline -2
0290 L45:
0290 .dbline 0 ; func end
0290 0895 ret
0292 .dbend
0292 .dbfunc e main _main fV
.even
0292 _main::
0292 .dbline -1
0292 .dbline 75
0292 .dbline 75
0292 F6DF xcall _init
0294 06C0 xjmp L48
0296 L47:
0296 .dbline 77
0296 .dbline 78
0296 20E0 ldi R18,<_data
0298 30E0 ldi R19,>_data
029A 00E0 ldi R16,<_timer
029C 10E0 ldi R17,>_timer
029E 67DF xcall _process
02A0 .dbline 79
02A0 91DF xcall _lcd
02A2 .dbline 80
02A2 L48:
02A2 .dbline 76
02A2 F9CF xjmp L47
02A4 X0:
02A4 .dbline -2
02A4 L46:
02A4 .dbline 0 ; func end
02A4 0895 ret
02A6 .dbend
.area data(ram, con, rel)
0009 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
0009 L31:
0009 .blkb 13
.area idata
0009 54696D6572206279204D4A5000 .byte 'T,'i,'m,'e,'r,32,'b,'y,32,'M,'J,'P,0
.area data(ram, con, rel)
0016 .dbfile D:\avr\+++精华+++\+M16范例+\定时器\main.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -