📄 main.lis
字号:
.module main.c
.area vector(rom, abs)
.org 4
0004 0C940000 jmp _int0_isr
.area text(rom, con, rel)
0000 .dbfile C:\DOCUME~1\Administrator\桌面\count\main.c
0000 .dbfunc e int0_isr _int0_isr fV
.even
0000 _int0_isr::
0000 8A93 st -y,R24
0002 8FB7 in R24,0x3f
0004 8A93 st -y,R24
0006 .dbline -1
0006 .dbline 9
0006 ;
0006 ; #include "config.h"
0006 ;
0006 ; unsigned int i;
0006 ; unsigned char flag;
0006 ;
0006 ; #pragma interrupt_handler int0_isr:2
0006 ; void int0_isr(void)
0006 ; {
0006 .dbline 10
0006 ; flag = 1;
0006 81E0 ldi R24,1
0008 80930000 sts _flag,R24
000C .dbline -2
000C L1:
000C 8991 ld R24,y+
000E 8FBF out 0x3f,R24
0010 8991 ld R24,y+
0012 .dbline 0 ; func end
0012 1895 reti
0014 .dbend
0014 .dbfunc e init_devices _init_devices fV
.even
0014 _init_devices::
0014 .dbline -1
0014 .dbline 14
0014 ; }
0014 ;
0014 ; void init_devices(void)
0014 ; {
0014 .dbline 15
0014 ; CLI(); //disable all interrupts
0014 F894 cli
0016 .dbline 16
0016 ; MCUCR = 0x00;
0016 2224 clr R2
0018 25BE out 0x35,R2
001A .dbline 17
001A ; GICR = 0x40;
001A 80E4 ldi R24,64
001C 8BBF out 0x3b,R24
001E .dbline 18
001E ; TIMSK = 0x00; //timer interrupt sources
001E 29BE out 0x39,R2
0020 .dbline 19
0020 ; SEI(); //re-enable interrupts
0020 7894 sei
0022 .dbline -2
0022 L2:
0022 .dbline 0 ; func end
0022 0895 ret
0024 .dbend
0024 .dbfunc e main _main fV
.even
0024 _main::
0024 .dbline -1
0024 .dbline 23
0024 ; }
0024 ;
0024 ; void main(void)
0024 ; {
0024 .dbline 24
0024 ; led_init();
0024 0E940000 xcall _led_init
0028 .dbline 25
0028 ; init_devices();
0028 F5DF xcall _init_devices
002A 1AC0 xjmp L5
002C L4:
002C .dbline 28
002C ;
002C ; while(1)
002C ; {
002C .dbline 29
002C ; if(flag==1)
002C 80910000 lds R24,_flag
0030 8130 cpi R24,1
0032 49F4 brne L7
0034 .dbline 30
0034 ; i++;
0034 80910100 lds R24,_i
0038 90910200 lds R25,_i+1
003C 0196 adiw R24,1
003E 90930200 sts _i+1,R25
0042 80930100 sts _i,R24
0046 L7:
0046 .dbline 31
0046 2224 clr R2
0048 20920000 sts _flag,R2
004C .dbline 32
004C 01E0 ldi R16,1
004E 10E0 ldi R17,0
0050 0E940000 xcall _delay_ms
0054 .dbline 33
0054 00910100 lds R16,_i
0058 10910200 lds R17,_i+1
005C 0E940000 xcall _display
0060 .dbline 34
0060 L5:
0060 .dbline 27
0060 E5CF xjmp L4
0062 X0:
0062 .dbline -2
0062 L3:
0062 .dbline 0 ; func end
0062 0895 ret
0064 .dbend
.area bss(ram, con, rel)
0000 .dbfile C:\DOCUME~1\Administrator\桌面\count\main.c
0000 _flag::
0000 .blkb 1
0001 .dbsym e flag _flag c
0001 _i::
0001 .blkb 2
0003 .dbsym e i _i i
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -