⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lis

📁 avr单片机的定时计数器的使用。包括各种延时子程序的调用。内有电路图。
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 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 + -