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

📄 main.lis

📁 一个关于AVR单片机的例程
💻 LIS
字号:
                        .module main.c
                        .area text(rom, con, rel)
 0000                   .dbfile C:\DOCUME~1\administrator\桌面\教程\LED应用\红绿灯闪烁\main.c
 0000                   .dbfunc e port_init _port_init fV
                        .even
 0000           _port_init::
 0000                   .dbline -1
 0000                   .dbline 8
 0000           ; //ICC-AVR application builder : 2006-12-9 下午 01:03:41
 0000           ; // Target : M16
 0000           ; // Crystal: 1.0000Mhz
 0000           ; 
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; void port_init(void)
 0000           ; {
 0000                   .dbline 9
 0000           ; PORTA = 0x03;
 0000 83E0              ldi R24,3
 0002 8BBB              out 0x1b,R24
 0004                   .dbline 10
 0004           ; DDRA = 0x03;
 0004 8ABB              out 0x1a,R24
 0006                   .dbline 11
 0006           ; PORTB = 0x00;
 0006 2224              clr R2
 0008 28BA              out 0x18,R2
 000A                   .dbline 12
 000A           ; DDRB = 0x00;
 000A 27BA              out 0x17,R2
 000C                   .dbline 13
 000C           ; PORTC = 0x00; //m103 output only
 000C 25BA              out 0x15,R2
 000E                   .dbline 14
 000E           ; DDRC = 0x00;
 000E 24BA              out 0x14,R2
 0010                   .dbline 15
 0010           ; PORTD = 0x00;
 0010 22BA              out 0x12,R2
 0012                   .dbline 16
 0012           ; DDRD = 0x00;
 0012 21BA              out 0x11,R2
 0014                   .dbline -2
 0014           L1:
 0014                   .dbline 0 ; func end
 0014 0895              ret
 0016                   .dbend
 0016                   .dbfunc e init_devices _init_devices fV
                        .even
 0016           _init_devices::
 0016                   .dbline -1
 0016                   .dbline 21
 0016           ; }
 0016           ; 
 0016           ; //call this routine to initialize all peripherals
 0016           ; void init_devices(void)
 0016           ; {
 0016                   .dbline 23
 0016           ; //stop errant interrupts until set up
 0016           ; CLI(); //disable all interrupts
 0016 F894              cli
 0018                   .dbline 24
 0018           ; port_init();
 0018 F3DF              xcall _port_init
 001A                   .dbline 25
 001A           ; MCUCR = 0x00;
 001A 2224              clr R2
 001C 25BE              out 0x35,R2
 001E                   .dbline 26
 001E           ; GICR = 0x00;
 001E 2BBE              out 0x3b,R2
 0020                   .dbline 27
 0020           ; TIMSK = 0x00; //timer interrupt sources
 0020 29BE              out 0x39,R2
 0022                   .dbline 28
 0022           ; SEI(); //re-enable interrupts
 0022 7894              sei
 0024                   .dbline -2
 0024           L2:
 0024                   .dbline 0 ; func end
 0024 0895              ret
 0026                   .dbend
 0026                   .dbfunc e Delay _Delay fV
 0026           ;              i -> R16
 0026           ;              j -> R18
                        .even
 0026           _Delay::
 0026                   .dbline -1
 0026                   .dbline 33
 0026           ; //all peripherals are now initialized
 0026           ; }
 0026           ; 
 0026           ; void Delay(void)
 0026           ; {
 0026                   .dbline 35
 0026           ; unsigned char i,j;
 0026           ; for(i=200;i>0;i--)
 0026 08EC              ldi R16,200
 0028 07C0              xjmp L7
 002A           L4:
 002A                   .dbline 36
 002A           ; {
 002A                   .dbline 37
 002A           ;   for(j=200;j>0;j--)
 002A 28EC              ldi R18,200
 002C 01C0              xjmp L11
 002E           L8:
 002E                   .dbline 38
 002E           L9:
 002E                   .dbline 37
 002E 2A95              dec R18
 0030           L11:
 0030                   .dbline 37
 0030 2224              clr R2
 0032 2216              cp R2,R18
 0034 E0F3              brlo L8
 0036                   .dbline 39
 0036           L5:
 0036                   .dbline 35
 0036 0A95              dec R16
 0038           L7:
 0038                   .dbline 35
 0038 2224              clr R2
 003A 2016              cp R2,R16
 003C B0F3              brlo L4
 003E                   .dbline -2
 003E           L3:
 003E                   .dbline 0 ; func end
 003E 0895              ret
 0040                   .dbsym r i 16 c
 0040                   .dbsym r j 18 c
 0040                   .dbend
 0040                   .dbfunc e main _main fV
                        .even
 0040           _main::
 0040                   .dbline -1
 0040                   .dbline 43
 0040           ;   ;
 0040           ; }
 0040           ; }
 0040           ; 
 0040           ; void main(void)
 0040           ; {
 0040                   .dbline 45
 0040           ; 
 0040           ; init_devices();       //初始化
 0040 EADF              xcall _init_devices
 0042 06C0              xjmp L14
 0044           L13:
 0044                   .dbline 48
 0044                   .dbline 49
 0044 82E0              ldi R24,2
 0046 88BB              out 0x18,R24
 0048                   .dbline 50
 0048 EEDF              xcall _Delay
 004A                   .dbline 51
 004A 81E0              ldi R24,1
 004C 88BB              out 0x18,R24
 004E                   .dbline 52
 004E EBDF              xcall _Delay
 0050                   .dbline 53
 0050           L14:
 0050                   .dbline 47
 0050 F9CF              xjmp L13
 0052           X0:
 0052                   .dbline -2
 0052           L12:
 0052                   .dbline 0 ; func end
 0052 0895              ret
 0054                   .dbend

⌨️ 快捷键说明

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