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

📄 ac8-2.lis

📁 AVR学习资料
💻 LIS
字号:
                        .module ac8-2.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\AVR\第8章实验程序\ac8-2\ac8-2.c
 0000                   .dbfunc e delay_ms _delay_ms fV
 0000           ;              i -> R20,R21
 0000           ;              j -> R22,R23
 0000           ;              k -> R16,R17
                        .even
 0000           _delay_ms::
 0000 0E940000          xcall push_gset2
 0004                   .dbline -1
 0004                   .dbline 9
 0004           ; #include<iom16v.h>    
 0004           ; #define uchar unsigned char
 0004           ; #define uint unsigned int
 0004           ; #define BZ_0  (PORTD=PORTD&0xdf) 
 0004           ; #define BZ_1  (PORTD=PORTD|0x20) 
 0004           ; uint cnt;
 0004           ; //=============================
 0004           ; void delay_ms(uint k)
 0004           ; {
 0004                   .dbline 11
 0004           ; uint i,j;                     
 0004           ;     for(i=0;i<k;i++)
 0004 4427              clr R20
 0006 5527              clr R21
 0008 0BC0              xjmp L5
 000A           L2:
 000A                   .dbline 12
 000A           ;     {
 000A                   .dbline 13
 000A           ;        for(j=0;j<1140;j++)
 000A 6627              clr R22
 000C 7727              clr R23
 000E 02C0              xjmp L9
 0010           L6:
 0010                   .dbline 14
 0010           L7:
 0010                   .dbline 13
 0010 6F5F              subi R22,255  ; offset = 1
 0012 7F4F              sbci R23,255
 0014           L9:
 0014                   .dbline 13
 0014 6437              cpi R22,116
 0016 E4E0              ldi R30,4
 0018 7E07              cpc R23,R30
 001A D0F3              brlo L6
 001C                   .dbline 15
 001C           L3:
 001C                   .dbline 11
 001C 4F5F              subi R20,255  ; offset = 1
 001E 5F4F              sbci R21,255
 0020           L5:
 0020                   .dbline 11
 0020 4017              cp R20,R16
 0022 5107              cpc R21,R17
 0024 90F3              brlo L2
 0026                   .dbline -2
 0026           L1:
 0026 0E940000          xcall pop_gset2
 002A                   .dbline 0 ; func end
 002A 0895              ret
 002C                   .dbsym r i 20 i
 002C                   .dbsym r j 22 i
 002C                   .dbsym r k 16 i
 002C                   .dbend
 002C                   .dbfunc e main _main fV
                        .even
 002C           _main::
 002C                   .dbline -1
 002C                   .dbline 19
 002C           ;        ;
 002C           ;     }
 002C           ; }
 002C           ; //=============================
 002C           ; void main(void)       
 002C           ; {                             
 002C                   .dbline 20
 002C           ; PORTB=0xff;   
 002C 8FEF              ldi R24,255
 002E 88BB              out 0x18,R24
 0030                   .dbline 21
 0030           ; DDRB=0xff;    
 0030 87BB              out 0x17,R24
 0032                   .dbline 22
 0032           ; PORTD=0xff;   
 0032 82BB              out 0x12,R24
 0034                   .dbline 23
 0034           ; DDRD  = 0xf3;
 0034 83EF              ldi R24,243
 0036 81BB              out 0x11,R24
 0038                   .dbline 24
 0038           ; MCUCR = 0x0A; 
 0038 8AE0              ldi R24,10
 003A 85BF              out 0x35,R24
 003C                   .dbline 25
 003C           ; GICR  = 0xC0; 
 003C 80EC              ldi R24,192
 003E 8BBF              out 0x3b,R24
 0040                   .dbline 26
 0040           ; SREG=0x80; 
 0040 80E8              ldi R24,128
 0042 8FBF              out 0x3f,R24
 0044 0AC0              xjmp L12
 0046           L11:
 0046                   .dbline 28
 0046                   .dbline 29
 0046 2224              clr R2
 0048 28BA              out 0x18,R2
 004A                   .dbline 30
 004A 04EF              ldi R16,500
 004C 11E0              ldi R17,1
 004E D8DF              xcall _delay_ms
 0050                   .dbline 31
 0050 8FEF              ldi R24,255
 0052 88BB              out 0x18,R24
 0054                   .dbline 32
 0054 04EF              ldi R16,500
 0056 11E0              ldi R17,1
 0058 D3DF              xcall _delay_ms
 005A                   .dbline 33
 005A           L12:
 005A                   .dbline 27
 005A F5CF              xjmp L11
 005C           X0:
 005C                   .dbline -2
 005C           L10:
 005C                   .dbline 0 ; func end
 005C 0895              ret
 005E                   .dbend
                        .area vector(rom, abs)
                        .org 4
 0004 0C942F00          jmp _int0_isr
                        .area text(rom, con, rel)
 005E                   .dbfile D:\AVR\第8章实验程序\ac8-2\ac8-2.c
 005E                   .dbfunc e int0_isr _int0_isr fV
                        .even
 005E           _int0_isr::
 005E 0E940000          xcall push_lset
 0062                   .dbline -1
 0062                   .dbline 38
 0062           ;    while(1)           
 0062           ;    {  
 0062           ;    PORTB=0x00;
 0062           ;    delay_ms(500);
 0062           ;    PORTB=0xff; 
 0062           ;    delay_ms(500); 
 0062           ;    }                  
 0062           ; }                     
 0062           ; //***************************************************
 0062           ; #pragma interrupt_handler int0_isr:2
 0062           ; void int0_isr(void)
 0062           ; {
 0062                   .dbline 39
 0062           ;  PORTB=0x0f;
 0062 8FE0              ldi R24,15
 0064 88BB              out 0x18,R24
 0066                   .dbline 40
 0066           ;   delay_ms(2000);
 0066 00ED              ldi R16,2000
 0068 17E0              ldi R17,7
 006A CADF              xcall _delay_ms
 006C                   .dbline -2
 006C           L14:
 006C 0E940000          xcall pop_lset
 0070                   .dbline 0 ; func end
 0070 1895              reti
 0072                   .dbend
                        .area vector(rom, abs)
                        .org 8
 0008 0C943900          jmp _int1_isr
                        .area text(rom, con, rel)
 0072                   .dbfile D:\AVR\第8章实验程序\ac8-2\ac8-2.c
 0072                   .dbfunc e int1_isr _int1_isr fV
                        .even
 0072           _int1_isr::
 0072 0E940000          xcall push_lset
 0076                   .dbline -1
 0076                   .dbline 45
 0076           ; }
 0076           ; //****************************************
 0076           ; #pragma interrupt_handler int1_isr:3
 0076           ; void int1_isr(void)
 0076           ; {
 0076                   .dbline 46
 0076           ; SREG=0x80;                            
 0076 80E8              ldi R24,128
 0078 8FBF              out 0x3f,R24
 007A                   .dbline 47
 007A           ;  for(cnt=0;cnt<5000;cnt++)
 007A 2224              clr R2
 007C 3324              clr R3
 007E 30920100          sts _cnt+1,R3
 0082 20920000          sts _cnt,R2
 0086 10C0              xjmp L19
 0088           L16:
 0088                   .dbline 48
 0088                   .dbline 48
 0088 959A              sbi 0x12,5
 008A                   .dbline 48
 008A 02E0              ldi R16,2
 008C 10E0              ldi R17,0
 008E B8DF              xcall _delay_ms
 0090                   .dbline 48
 0090 82B3              in R24,0x12
 0092 8F7D              andi R24,223
 0094 82BB              out 0x12,R24
 0096                   .dbline 48
 0096           L17:
 0096                   .dbline 47
 0096 80910000          lds R24,_cnt
 009A 90910100          lds R25,_cnt+1
 009E 0196              adiw R24,1
 00A0 90930100          sts _cnt+1,R25
 00A4 80930000          sts _cnt,R24
 00A8           L19:
 00A8                   .dbline 47
 00A8 80910000          lds R24,_cnt
 00AC 90910100          lds R25,_cnt+1
 00B0 8838              cpi R24,136
 00B2 E3E1              ldi R30,19
 00B4 9E07              cpc R25,R30
 00B6 40F3              brlo L16
 00B8                   .dbline -2
 00B8           L15:
 00B8 0E940000          xcall pop_lset
 00BC                   .dbline 0 ; func end
 00BC 1895              reti
 00BE                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile D:\AVR\第8章实验程序\ac8-2\ac8-2.c
 0000           _cnt::
 0000                   .blkb 2
 0002                   .dbsym e cnt _cnt i

⌨️ 快捷键说明

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