📄 ¿-
字号:
.module main.c
.area text(rom, con, rel)
0000 .dbfile main.c
.area data(ram, con, rel)
0000 .dbfile main.c
0000 _count::
0000 .blkb 1
.area idata
0000 00 .byte 0
.area data(ram, con, rel)
0001 .dbfile main.c
0001 .dbfile E:\课件\128最小系统板\AVR程序\定时器\main.c
0001 .dbsym e count _count c
.area text(rom, con, rel)
0000 .dbfile E:\课件\128最小系统板\AVR程序\定时器\main.c
0000 .dbfunc e init_timer0 _init_timer0 fV
.even
0000 _init_timer0::
0000 .dbline -1
0000 .dbline 11
0000 ; #include <iom128v.h>
0000 ; #include <macros.h>
0000 ; #include"adc.h"
0000 ; #include "12864.h" //包含头文件
0000 ;
0000 ; #define uchar unsigned char
0000 ; #define uint unsigned int
0000 ; uchar count=0;
0000 ;
0000 ; void init_timer0(void)
0000 ; {
0000 .dbline 12
0000 ; CLI();
0000 F894 cli
0002 .dbline 13
0002 ; TCCR0=0X00;//32分频 定时溢出 关
0002 2224 clr R2
0004 23BE out 0x33,R2
0006 .dbline 14
0006 ; ASSR&=~(1<<AS0);
0006 80B7 in R24,0x30
0008 877F andi R24,247
000A 80BF out 0x30,R24
000C .dbline 15
000C ; TCNT0=0X02;
000C 82E0 ldi R24,2
000E 82BF out 0x32,R24
0010 .dbline 16
0010 ; TCCR0=0X07;//256分频 定时溢出 1024
0010 87E0 ldi R24,7
0012 83BF out 0x33,R24
0014 .dbline 17
0014 ; TIMSK|=(1<<TOIE0);
0014 87B7 in R24,0x37
0016 8160 ori R24,1
0018 87BF out 0x37,R24
001A .dbline 18
001A ; TIFR|=(1<<TOV0);
001A 86B7 in R24,0x36
001C 8160 ori R24,1
001E 86BF out 0x36,R24
0020 .dbline 19
0020 ; SEI();
0020 7894 sei
0022 .dbline -2
0022 L1:
0022 .dbline 0 ; func end
0022 0895 ret
0024 .dbend
0024 .dbfunc e main _main fV
.even
0024 _main::
0024 2297 sbiw R28,2
0026 .dbline -1
0026 .dbline 22
0026 ; }
0026 ; void main(void)
0026 ; {
0026 .dbline 23
0026 ; init_timer0();
0026 ECDF xcall _init_timer0
0028 .dbline 24
0028 ; LCD_init();
0028 0E940000 xcall _LCD_init
002C .dbline 25
002C ; Lcd_puts_any(0,0,"我骂我");
002C 80E0 ldi R24,<L3
002E 90E0 ldi R25,>L3
0030 9983 std y+1,R25
0032 8883 std y+0,R24
0034 2227 clr R18
0036 0027 clr R16
0038 0E940000 xcall _Lcd_puts_any
003C L4:
003C .dbline 26
003C ; while(1);
003C L5:
003C .dbline 26
003C FFCF xjmp L4
003E X0:
003E .dbline -2
003E L2:
003E .dbline 0 ; func end
003E 2296 adiw R28,2
0040 0895 ret
0042 .dbend
.area vector(rom, abs)
.org 64
0040 0C942100 jmp _timer0_ovf_isr
.area text(rom, con, rel)
0042 .dbfile E:\课件\128最小系统板\AVR程序\定时器\main.c
0042 .dbfunc e timer0_ovf_isr _timer0_ovf_isr fV
.even
0042 _timer0_ovf_isr::
0042 0A92 st -y,R0
0044 1A92 st -y,R1
0046 2A92 st -y,R2
0048 3A92 st -y,R3
004A 4A92 st -y,R4
004C 5A92 st -y,R5
004E 6A92 st -y,R6
0050 7A92 st -y,R7
0052 8A92 st -y,R8
0054 9A92 st -y,R9
0056 0A93 st -y,R16
0058 1A93 st -y,R17
005A 2A93 st -y,R18
005C 3A93 st -y,R19
005E 8A93 st -y,R24
0060 9A93 st -y,R25
0062 AA93 st -y,R26
0064 BA93 st -y,R27
0066 EA93 st -y,R30
0068 FA93 st -y,R31
006A 0FB6 IN R0,63
006C 0A92 st -y,R0
006E .dbline -1
006E .dbline 31
006E ; }
006E ;
006E ; #pragma interrupt_handler timer0_ovf_isr:17
006E ; void timer0_ovf_isr(void)
006E ; {
006E .dbline 32
006E ; TCNT0=0X10;
006E 80E1 ldi R24,16
0070 82BF out 0x32,R24
0072 .dbline 33
0072 ; count++;
0072 80910000 lds R24,_count
0076 8F5F subi R24,255 ; addi 1
0078 80930000 sts _count,R24
007C .dbline 34
007C ; if(count==10)
007C 8A30 cpi R24,10
007E 29F4 brne L8
0080 X1:
0080 .dbline 35
0080 ; {
0080 .dbline 36
0080 ; count=0;
0080 2224 clr R2
0082 20920000 sts _count,R2
0086 .dbline 37
0086 ; display();//测电压
0086 0E940000 xcall _display
008A .dbline 38
008A ; }
008A L8:
008A .dbline -2
008A L7:
008A .dbline 0 ; func end
008A 0990 ld R0,y+
008C 0FBE OUT 63,R0
008E F991 ld R31,y+
0090 E991 ld R30,y+
0092 B991 ld R27,y+
0094 A991 ld R26,y+
0096 9991 ld R25,y+
0098 8991 ld R24,y+
009A 3991 ld R19,y+
009C 2991 ld R18,y+
009E 1991 ld R17,y+
00A0 0991 ld R16,y+
00A2 9990 ld R9,y+
00A4 8990 ld R8,y+
00A6 7990 ld R7,y+
00A8 6990 ld R6,y+
00AA 5990 ld R5,y+
00AC 4990 ld R4,y+
00AE 3990 ld R3,y+
00B0 2990 ld R2,y+
00B2 1990 ld R1,y+
00B4 0990 ld R0,y+
00B6 1895 reti
00B8 .dbend
.area data(ram, con, rel)
0001 .dbfile E:\课件\128最小系统板\AVR程序\定时器\main.c
0001 L3:
0001 .blkb 7
.area idata
0001 CED2C2EECED200 .byte 206,210,194,238,206,210,0
.area data(ram, con, rel)
0008 .dbfile E:\课件\128最小系统板\AVR程序\定时器\main.c
0008 ; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -