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

📄 test_int0.lis

📁 ad7135的avr16的源程序
💻 LIS
字号:
                        .module test_int0.c
                        .area data(ram, con, rel)
 0000           _N::
 0000                   .blkb 1
                        .area idata
 0000 00                .byte 0
                        .area data(ram, con, rel)
 0001                   .dbfile test_int0.c
 0001                   .dbsym e N _N c
                        .area text(rom, con, rel)
 0000                   .dbfile test_int0.c
 0000                   .dbfunc e INT0_INIT _INT0_INIT fV
                        .even
 0000           _INT0_INIT::
 0000                   .dbline -1
 0000                   .dbline 32
 0000           ; //********************************************************* 
 0000           ; //测试功能:定时器t0产生250khz的方波
 0000           ; //测试方法:示波器观察 或者proteus仿真
 0000           ; //测试结果:ok
 0000           ; //时钟频率:外部8m
 0000           ; //管脚分配:
 0000           ; //注意事项: 
 0000           ; //完成时间:2009.03.15 
 0000           ; //**********************************************************
 0000           ; 
 0000           ; //********************************************************** 
 0000           ; //头文件
 0000           ; //**********************************************************
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; //*****************************************************
 0000           ; 
 0000           ; 
 0000           ; //***************************************************** 
 0000           ; //全局变量定义
 0000           ; //*****************************************************
 0000           ; 
 0000           ; unsigned char N=0;
 0000           ;  
 0000           ; 
 0000           ; //***************************************************** 
 0000           ; //函数名称:void INT0_INIT(void)  
 0000           ; //函数功能:int0初始化,上升沿产生中断,使能中断
 0000           ; //注意事项:未开总中断
 0000           ; //*****************************************************
 0000           ; void INT0_INIT(void)
 0000           ; {      
 0000                   .dbline 33
 0000           ;        MCUCR|=((1<<ISC01)|(1<<ISC00));
 0000 85B7              in R24,0x35
 0002 8360              ori R24,3
 0004 85BF              out 0x35,R24
 0006                   .dbline 34
 0006           ;        GICR|=(1<<INT0);
 0006 8BB7              in R24,0x3b
 0008 8064              ori R24,64
 000A 8BBF              out 0x3b,R24
 000C                   .dbline -2
 000C           L1:
 000C                   .dbline 0 ; func end
 000C 0895              ret
 000E                   .dbend
                        .area vector(rom, abs)
                        .org 4
 0004 0C940700          jmp _INT0_INTERRUPT
                        .area text(rom, con, rel)
 000E                   .dbfile test_int0.c
 000E                   .dbfunc e INT0_INTERRUPT _INT0_INTERRUPT fV
                        .even
 000E           _INT0_INTERRUPT::
 000E 8A93              st -y,R24
 0010 9A93              st -y,R25
 0012 8FB7              in R24,0x3f
 0014 8A93              st -y,R24
 0016                   .dbline -1
 0016                   .dbline 43
 0016           ; }
 0016           ; //***************************************************** 
 0016           ; //函数名称:void INT0_INTERRUPT(void) 
 0016           ; //函数功能:中断处理,N+1
 0016           ; //注意事项: 
 0016           ; //*****************************************************
 0016           ; #pragma interrupt_handler INT0_INTERRUPT:2
 0016           ; void INT0_INTERRUPT(void)
 0016           ; {      
 0016                   .dbline 44
 0016           ;        N++;
 0016 80910000          lds R24,_N
 001A 8F5F              subi R24,255    ; addi 1
 001C 80930000          sts _N,R24
 0020                   .dbline 45
 0020           ;        NOP();
 0020 0000              nop
 0022                   .dbline -2
 0022           L2:
 0022 8991              ld R24,y+
 0024 8FBF              out 0x3f,R24
 0026 9991              ld R25,y+
 0028 8991              ld R24,y+
 002A                   .dbline 0 ; func end
 002A 1895              reti
 002C                   .dbend
 002C                   .dbfunc e main _main fV
                        .even
 002C           _main::
 002C                   .dbline -1
 002C                   .dbline 51
 002C           ; }
 002C           ; //********************************************************** 
 002C           ; //主函数
 002C           ; //**********************************************************
 002C           ; void main(void)
 002C           ; {      
 002C                   .dbline 52
 002C           ;        CLI();
 002C F894              cli
 002E                   .dbline 53
 002E           ;        INT0_INIT();
 002E E8DF              xcall _INT0_INIT
 0030                   .dbline 54
 0030           ;        SEI();
 0030 7894              sei
 0032           L4:
 0032                   .dbline 56
 0032           L5:
 0032                   .dbline 55
 0032 FFCF              xjmp L4
 0034           X0:
 0034                   .dbline -2
 0034           L3:
 0034                   .dbline 0 ; func end
 0034 0895              ret
 0036                   .dbend

⌨️ 快捷键说明

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