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

📄 main.lis

📁 学习AVR单片机的基础实验程序 适合初学者学习提高
💻 LIS
字号:
                        .module main.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\AVR\我的程序\外部中断0实验/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           ; *实验目的:熟悉外部中断编程
 0004           ; *设    计:萧联珠
 0004           ; *日    期:2007-11-23
 0004           ; ************************************/
 0004           ; #include <iom16v.h>
 0004           ; #include "cfg.h"
 0004           ; 
 0004           ; void main()
 0004           ; {
 0004                   .dbline 12
 0004           ;   port_init();
 0004           ;   INT0_init();   /*外部中断初始化*/
 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           ;   while(1)
 002A           ;   {
 002A           ;    display();
 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 22
 0030           ; 
 0030           ; 
 0030 8A98              cbi 0x11,2
 0032                   .dbline 23
 0032           ; 
 0032 929A              sbi 0x12,2
 0034                   .dbline -2
 0034           L10:
 0034                   .dbline 0 ; func end
 0034 0895              ret
 0036                   .dbend
 0036                   .dbfunc e display _display fV
 0036           ;              i -> R20
                        .even
 0036           _display::
 0036 0E940000          xcall push_gset1
 003A                   .dbline -1
 003A                   .dbline 28
 003A           ; 
 003A           ; 
 003A           ; 
 003A           ; 
 003A           ; 
 003A                   .dbline 30
 003A           ; 
 003A           ; 
 003A 4427              clr R20
 003C 0BC0              xjmp L15
 003E           L12:
 003E                   .dbline 31
 003E                   .dbline 32
 003E 01E0              ldi R16,1
 0040 142F              mov R17,R20
 0042 0E940000          xcall lsl8
 0046 202E              mov R2,R16
 0048 2094              com R2
 004A 28BA              out 0x18,R2
 004C                   .dbline 33
 004C 04E6              ldi R16,100
 004E 10E0              ldi R17,0
 0050 D7DF              xcall _delay_ms
 0052                   .dbline 34
 0052           L13:
 0052                   .dbline 30
 0052 4395              inc R20
 0054           L15:
 0054                   .dbline 30
 0054 4830              cpi R20,8
 0056 98F3              brlo L12
 0058                   .dbline -2
 0058           L11:
 0058 0E940000          xcall pop_gset1
 005C                   .dbline 0 ; func end
 005C 0895              ret
 005E                   .dbsym r i 20 c
 005E                   .dbend
 005E                   .dbfunc e INT0_init _INT0_init fV
                        .even
 005E           _INT0_init::
 005E                   .dbline -1
 005E                   .dbline 39
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E           ; 
 005E                   .dbline 40
 005E           ; 
 005E 80E8              ldi R24,128
 0060 8FBF              out 0x3f,R24
 0062                   .dbline 41
 0062           ; 
 0062 85B7              in R24,0x35
 0064 8C7F              andi R24,252
 0066 85BF              out 0x35,R24
 0068                   .dbline 42
 0068           ; 
 0068 80E4              ldi R24,64
 006A 8BBF              out 0x3b,R24
 006C                   .dbline -2
 006C           L16:
 006C                   .dbline 0 ; func end
 006C 0895              ret
 006E                   .dbend
                        .area vector(rom, abs)
                        .org 4
 0004 0C943700          jmp _int0
                        .area text(rom, con, rel)
 006E                   .dbfile D:\AVR\我的程序\外部中断0实验/cfg.h
 006E                   .dbfunc e int0 _int0 fV
 006E           ;              i -> R20
                        .even
 006E           _int0::
 006E 0E940000          xcall push_lset
 0072 0E940000          xcall push_gset1
 0076                   .dbline -1
 0076                   .dbline 48
 0076           ; 
 0076           ; 
 0076           ; 
 0076           ; 
 0076           ; 
 0076           ; 
 0076                   .dbline 50
 0076           ; 
 0076           ; 
 0076 48E0              ldi R20,8
 0078 0CC0              xjmp L21
 007A           L18:
 007A                   .dbline 51
 007A                   .dbline 52
 007A 142F              mov R17,R20
 007C 1150              subi R17,1
 007E 01E0              ldi R16,1
 0080 0E940000          xcall lsl8
 0084 202E              mov R2,R16
 0086 2094              com R2
 0088 28BA              out 0x18,R2
 008A                   .dbline 53
 008A 04E6              ldi R16,100
 008C 10E0              ldi R17,0
 008E B8DF              xcall _delay_ms
 0090                   .dbline 54
 0090           L19:
 0090                   .dbline 50
 0090 4A95              dec R20
 0092           L21:
 0092                   .dbline 50
 0092 2224              clr R2
 0094 2416              cp R2,R20
 0096 88F3              brlo L18
 0098                   .dbline -2
 0098           L17:
 0098 0E940000          xcall pop_gset1
 009C 0E940000          xcall pop_lset
 00A0                   .dbline 0 ; func end
 00A0 1895              reti
 00A2                   .dbsym r i 20 c
 00A2                   .dbend
 00A2                   .dbfile D:\AVR\我的程序\外部中断0实验\main.c
 00A2                   .dbfunc e main _main fV
                        .even
 00A2           _main::
 00A2                   .dbline -1
 00A2                   .dbline 10
 00A2                   .dbline 11
 00A2 C3DF              xcall _port_init
 00A4                   .dbline 12
 00A4 DCDF              xcall _INT0_init
 00A6 01C0              xjmp L24
 00A8           L23:
 00A8                   .dbline 15
 00A8                   .dbline 16
 00A8 C6DF              xcall _display
 00AA                   .dbline 17
 00AA           L24:
 00AA                   .dbline 14
 00AA FECF              xjmp L23
 00AC           X0:
 00AC                   .dbline -2
 00AC           L22:
 00AC                   .dbline 0 ; func end
 00AC 0895              ret
 00AE                   .dbend

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -