📄 main.lis
字号:
.module main.c
.area text(rom, con, rel)
0000 .dbfile D:\工作\SolidSnake\Snake_Exam\Example_1\main.c
0000 .dbfunc e port_init _port_init fV
.even
0000 _port_init::
0000 .dbline -1
0000 .dbline 9
0000 ; //ICC-AVR application builder : 2007-05-11 11:05:23
0000 ; // Target : M8
0000 ; // Crystal: 11.059Mhz
0000 ;
0000 ; #include <iom8v.h>
0000 ; #include <macros.h>
0000 ;
0000 ; void port_init(void)
0000 ; {
0000 .dbline 10
0000 ; PORTB = 0xFF;
0000 8FEF ldi R24,255
0002 88BB out 0x18,R24
0004 .dbline 11
0004 ; DDRB = 0x00;
0004 2224 clr R2
0006 27BA out 0x17,R2
0008 .dbline 12
0008 ; PORTC = 0x7F; //m103 output only
0008 8FE7 ldi R24,127
000A 85BB out 0x15,R24
000C .dbline 13
000C ; DDRC = 0x00;
000C 24BA out 0x14,R2
000E .dbline 14
000E ; PORTD = 0xFF;
000E 8FEF ldi R24,255
0010 82BB out 0x12,R24
0012 .dbline 15
0012 ; DDRD = 0x60;
0012 80E6 ldi R24,96
0014 81BB out 0x11,R24
0016 .dbline -2
0016 .dbline 16
0016 ; }
0016 L1:
0016 .dbline 0 ; func end
0016 0895 ret
0018 .dbend
0018 .dbfunc e init_devices _init_devices fV
.even
0018 _init_devices::
0018 .dbline -1
0018 .dbline 20
0018 ;
0018 ; //call this routine to initialise all peripherals
0018 ; void init_devices(void)
0018 ; {
0018 .dbline 22
0018 ; //stop errant interrupts until set up
0018 ; CLI(); //disable all interrupts
0018 F894 cli
001A .dbline 23
001A ; port_init();
001A F2DF rcall _port_init
001C .dbline 25
001C ;
001C ; MCUCR = 0x00;
001C 2224 clr R2
001E 25BE out 0x35,R2
0020 .dbline 26
0020 ; GICR = 0x00;
0020 2BBE out 0x3b,R2
0022 .dbline 27
0022 ; TIMSK = 0x04; //timer interrupt sources
0022 84E0 ldi R24,4
0024 89BF out 0x39,R24
0026 .dbline 28
0026 ; SEI(); //re-enable interrupts
0026 7894 sei
0028 .dbline -2
0028 .dbline 30
0028 ; //all peripherals are now initialised
0028 ; }
0028 L2:
0028 .dbline 0 ; func end
0028 0895 ret
002A .dbend
002A .dbfunc e main _main fV
.even
002A _main::
002A .dbline -1
002A .dbline 33
002A ;
002A ; void main(void)
002A ; {
002A .dbline 34
002A ; init_devices();
002A F6DF rcall _init_devices
002C .dbline 36
002C ;
002C ; PORTD &= 0b11011111; //LED1亮
002C 82B3 in R24,0x12
002E 8F7D andi R24,223
0030 82BB out 0x12,R24
0032 .dbline -2
0032 .dbline 39
0032 ;
0032 ; //PORTD &= 0b10111111; //LED2亮
0032 ; }
0032 L3:
0032 .dbline 0 ; func end
0032 0895 ret
0034 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -