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

📄 test.lis

📁 avr16控制数字电位器x9313的程序
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module test.c
                        .area text(rom, con, rel)
 0000                   .dbfile test.c
 0000                   .dbfunc e DELAY_1US _DELAY_1US fV
                        .even
 0000           _DELAY_1US::
 0000                   .dbline -1
 0000                   .dbline 28
 0000           ; //********************************************************* 
 0000           ; //测试功能:测试9313放大n+1倍   现在放大2倍
 0000           ; //测试方法: 
 0000           ; //测试结果:?
 0000           ; //时钟频率:8m   
 0000           ; //管脚分配:Pd0为使能位,Pd1为时序发生位,Pd2为+或-位
 0000           ; //          
 0000           ; //注意事项: 
 0000           ; //完成时间:2009.03.18
 0000           ; //************************************************
 0000           ; 
 0000           ; //************************************************* 
 0000           ; //头文件
 0000           ; //************************************************
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; //************************************************
 0000           ; 
 0000           ; 
 0000           ; //********************************************************** 
 0000           ; //函数名称:void DELAY_1US(void)
 0000           ; //参数入口:无
 0000           ; //参数出口:无
 0000           ; //函数功能:延时1us
 0000           ; //注意事项: 
 0000           ; //********************************************************** 
 0000           ; void DELAY_1US(void)
 0000           ; {    
 0000                   .dbline 29
 0000           ;       NOP();
 0000 0000              nop
 0002                   .dbline -2
 0002           L1:
 0002                   .dbline 0 ; func end
 0002 0895              ret
 0004                   .dbend
 0004                   .dbfunc e DELAY_NUS _DELAY_NUS fV
 0004           ;              n -> R20,R21
                        .even
 0004           _DELAY_NUS::
 0004 0E940000          xcall push_gset1
 0008 A801              movw R20,R16
 000A                   .dbline -1
 000A                   .dbline 39
 000A           ; }
 000A           ; //********************************************************** 
 000A           ; //函数名称:void DELAY_NUS(void)
 000A           ; //参数入口:无
 000A           ; //参数出口:无
 000A           ; //函数功能:延时nus
 000A           ; //注意事项:
 000A           ; //********************************************************** 
 000A           ; void DELAY_NUS(unsigned int n)
 000A           ; {      
 000A                   .dbline 40
 000A           ;        for(;n>0;n--)
 000A 03C0              xjmp L6
 000C           L3:
 000C                   .dbline 41
 000C F9DF              xcall _DELAY_1US
 000E           L4:
 000E                   .dbline 40
 000E 4150              subi R20,1
 0010 5040              sbci R21,0
 0012           L6:
 0012                   .dbline 40
 0012 4030              cpi R20,0
 0014 4507              cpc R20,R21
 0016 D1F7              brne L3
 0018           X0:
 0018                   .dbline -2
 0018           L2:
 0018 0E940000          xcall pop_gset1
 001C                   .dbline 0 ; func end
 001C 0895              ret
 001E                   .dbsym r n 20 i
 001E                   .dbend
 001E                   .dbfunc e DELAY_1MS _DELAY_1MS fV
 001E           ;              i -> R16,R17
                        .even
 001E           _DELAY_1MS::
 001E                   .dbline -1
 001E                   .dbline 51
 001E           ;             DELAY_1US();
 001E           ; }
 001E           ; //********************************************************** 
 001E           ; //函数名称:void DELAY_1MS(void)
 001E           ; //参数入口:无
 001E           ; //参数出口:无
 001E           ; //函数功能:延时1ms
 001E           ; //注意事项:i=143*n-2
 001E           ; //********************************************************** 
 001E           ; void DELAY_1MS(void)
 001E           ; {    
 001E                   .dbline 53
 001E           ;        unsigned int i;
 001E           ;        for(i=1142;i>0;i--)    
 001E 06E7              ldi R16,1142
 0020 14E0              ldi R17,4
 0022 02C0              xjmp L11
 0024           L8:
 0024                   .dbline 54
 0024           L9:
 0024                   .dbline 53
 0024 0150              subi R16,1
 0026 1040              sbci R17,0
 0028           L11:
 0028                   .dbline 53
 0028 0030              cpi R16,0
 002A 0107              cpc R16,R17
 002C D9F7              brne L8
 002E           X1:
 002E                   .dbline -2
 002E           L7:
 002E                   .dbline 0 ; func end
 002E 0895              ret
 0030                   .dbsym r i 16 i
 0030                   .dbend
 0030                   .dbfunc e DELAY_NMS _DELAY_NMS fV
 0030           ;              n -> R20,R21
                        .even
 0030           _DELAY_NMS::
 0030 0E940000          xcall push_gset1
 0034 A801              movw R20,R16
 0036                   .dbline -1
 0036                   .dbline 64
 0036           ;           ;
 0036           ; }
 0036           ; //********************************************************** 
 0036           ; //函数名称:void DELAY_1MS(void)
 0036           ; //参数入口:无
 0036           ; //参数出口:无
 0036           ; //函数功能:延时1ms
 0036           ; //注意事项:i=143*n-2
 0036           ; //********************************************************** 
 0036           ; void DELAY_NMS(unsigned int n)
 0036           ; {      
 0036                   .dbline 65
 0036           ;        for(;n>0;n--)
 0036 03C0              xjmp L16
 0038           L13:
 0038                   .dbline 66
 0038 F2DF              xcall _DELAY_1MS
 003A           L14:
 003A                   .dbline 65
 003A 4150              subi R20,1
 003C 5040              sbci R21,0
 003E           L16:
 003E                   .dbline 65
 003E 4030              cpi R20,0
 0040 4507              cpc R20,R21
 0042 D1F7              brne L13
 0044           X2:
 0044                   .dbline -2
 0044           L12:
 0044 0E940000          xcall pop_gset1
 0048                   .dbline 0 ; func end
 0048 0895              ret
 004A                   .dbsym r n 20 i
 004A                   .dbend
 004A                   .dbfunc e PORT_INIT _PORT_INIT fV
                        .even
 004A           _PORT_INIT::
 004A                   .dbline -1
 004A                   .dbline 76
 004A           ;             DELAY_1MS();
 004A           ; }
 004A           ; //********************************************************** 
 004A           ; //函数名称:void INIT_X9313(void)
 004A           ; //参数入口:无
 004A           ; //参数出口:无
 004A           ; //函数功能:是放大倍数为1
 004A           ; //注意事项:PD0为使能位,PD1为时序发生位,PD2为+或-位 
 004A           ; //***************************************************
 004A           ; void PORT_INIT(void)
 004A           ; {      
 004A                   .dbline 77
 004A           ;        DDRA|=0X07;
 004A 8AB3              in R24,0x1a
 004C 8760              ori R24,7
 004E 8ABB              out 0x1a,R24
 0050                   .dbline 78
 0050           ;        PORTA|=0X07;
 0050 8BB3              in R24,0x1b
 0052 8760              ori R24,7
 0054 8BBB              out 0x1b,R24
 0056                   .dbline -2
 0056           L17:
 0056                   .dbline 0 ; func end
 0056 0895              ret
 0058                   .dbend
 0058                   .dbfunc e INIT_X9313 _INIT_X9313 fV
 0058           ;              n -> R20
                        .even
 0058           _INIT_X9313::
 0058 0E940000          xcall push_gset1
 005C                   .dbline -1
 005C                   .dbline 88
 005C           ; }
 005C           ; //********************************************************** 
 005C           ; //函数名称:void INIT_X9313(void)
 005C           ; //参数入口:无
 005C           ; //参数出口:无
 005C           ; //函数功能:是放大倍数为1
 005C           ; //注意事项:PD0为使能位,PD1为时序发生位,PD2为+或-位 

⌨️ 快捷键说明

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