📄 time1_area.lis
字号:
.module time1_area.c
.area text(rom, con, rel)
0000 .dbfile F:\Work\Data\程序\修订版~1.1\time1_area.c
0000 .dbfunc e timer1_init _timer1_init fV
.even
0000 _timer1_init::
0000 .dbline -1
0000 .dbline 5
0000 ; #include"main_H.h"
0000 ;
0000 ; /*******************定时器1初始化子程序定时为1秒*****************/
0000 ; void timer1_init(void)
0000 ; {
0000 .dbline 6
0000 ; TCCR1B = 0x00;
0000 2224 clr R2
0002 2EBC out 0x2e,R2
0004 .dbline 7
0004 ; TCNT1H = 0xe1; //定时器为1秒
0004 81EE ldi R24,225
0006 8DBD out 0x2d,R24
0008 .dbline 8
0008 ; TCNT1L = 0x7c;
0008 8CE7 ldi R24,124
000A 8CBD out 0x2c,R24
000C .dbline 9
000C ; TCCR1B = 0x05; //分率系数为1024
000C 85E0 ldi R24,5
000E 8EBD out 0x2e,R24
0010 .dbline -2
0010 L1:
0010 .dbline 0 ; func end
0010 0895 ret
0012 .dbend
.area vector(rom, abs)
.org 16
0010 09C0 rjmp _timer1_ovf_isr
.area text(rom, con, rel)
0012 .dbfile F:\Work\Data\程序\修订版~1.1\time1_area.c
0012 .dbfunc e timer1_ovf_isr _timer1_ovf_isr fV
.even
0012 _timer1_ovf_isr::
0012 8A93 st -y,R24
0014 9A93 st -y,R25
0016 8FB7 in R24,0x3f
0018 8A93 st -y,R24
001A .dbline -1
001A .dbline 15
001A ; }
001A ;
001A ; /*******************定时器1中断服务子程序********************/
001A ; #pragma interrupt_handler timer1_ovf_isr:iv_TIMER1_OVF
001A ; void timer1_ovf_isr(void)
001A ; {
001A .dbline 16
001A ; CLI();
001A F894 cli
001C .dbline 17
001C ; TCNT1H = 0xe1; //定时器为1秒
001C 81EE ldi R24,225
001E 8DBD out 0x2d,R24
0020 .dbline 18
0020 ; TCNT1L = 0x7c;
0020 8CE7 ldi R24,124
0022 8CBD out 0x2c,R24
0024 .dbline 19
0024 ; second++; //秒变量加1
0024 80910000 lds R24,_second
0028 90910100 lds R25,_second+1
002C 0196 adiw R24,1
002E 90930100 sts _second+1,R25
0032 80930000 sts _second,R24
0036 .dbline 20
0036 ; SEI();
0036 7894 sei
0038 .dbline -2
0038 L2:
0038 .dbline 0 ; func end
0038 8991 ld R24,y+
003A 8FBF out 0x3f,R24
003C 9991 ld R25,y+
003E 8991 ld R24,y+
0040 1895 reti
0042 .dbend
0042 ; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -