📄 mega16test.lis
字号:
.module mega16test.c
.area text(rom, con, rel)
0000 .dbfile E:\设计练习\每周练习\暑假培训\1602\avr1602\mega16test.c
0000 .dbfunc e port_init _port_init fV
.even
0000 _port_init::
0000 .dbline -1
0000 .dbline 6
0000 ; #include <iom16v.h>
0000 ; #define uchar unsigned char
0000 ; #define fosc 12000000 //晶振7.3728MHZ
0000 ;
0000 ; void port_init(void)
0000 ; {
0000 .dbline 7
0000 ; PORTA = 0xFF;
0000 8FEF ldi R24,255
0002 8BBB out 0x1b,R24
0004 .dbline 8
0004 ; DDRA = 0x00;
0004 2224 clr R2
0006 2ABA out 0x1a,R2
0008 .dbline 9
0008 ; PORTB = 0xFF;
0008 88BB out 0x18,R24
000A .dbline 10
000A ; DDRB = 0x00;
000A 27BA out 0x17,R2
000C .dbline 11
000C ; PORTC = 0xFF; //m103 output only
000C 85BB out 0x15,R24
000E .dbline 12
000E ; DDRC = 0xFF;
000E 84BB out 0x14,R24
0010 .dbline 13
0010 ; PORTD = 0xFF;
0010 82BB out 0x12,R24
0012 .dbline 14
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 delay _delay fV
0016 ; i -> R20
0016 ; j -> R22
0016 ; t -> R16
.even
0016 _delay::
0016 0E940000 xcall push_gset2
001A .dbline -1
001A .dbline 18
001A ; }
001A ;
001A ; void delay(uchar t)
001A ; {
001A .dbline 20
001A ; uchar i,j;
001A ; for(i=0;i<t;i++)
001A 4427 clr R20
001C 06C0 xjmp L6
001E L3:
001E .dbline 21
001E 6627 clr R22
0020 01C0 xjmp L10
0022 L7:
0022 .dbline 21
0022 L8:
0022 .dbline 21
0022 6395 inc R22
0024 L10:
0024 .dbline 21
0024 6A3F cpi R22,250
0026 E8F3 brlo L7
0028 L4:
0028 .dbline 20
0028 4395 inc R20
002A L6:
002A .dbline 20
002A 4017 cp R20,R16
002C C0F3 brlo L3
002E .dbline -2
002E L2:
002E 0E940000 xcall pop_gset2
0032 .dbline 0 ; func end
0032 0895 ret
0034 .dbsym r i 20 c
0034 .dbsym r j 22 c
0034 .dbsym r t 16 c
0034 .dbend
0034 .dbfunc e main _main fV
.even
0034 _main::
0034 .dbline -1
0034 .dbline 27
0034 ; for(j=0;j<250;j++);
0034 ; }
0034 ;
0034 ;
0034 ; /* RS232通信main函数 */
0034 ; void main(void)
0034 ; {
0034 .dbline 28
0034 ; port_init();
0034 E5DF xcall _port_init
0036 .dbline 29
0036 ; PORTC = 0x0;
0036 2224 clr R2
0038 25BA out 0x15,R2
003A 28C0 xjmp L13
003C L12:
003C .dbline 31
003C .dbline 32
003C 0AEF ldi R16,250
003E EBDF xcall _delay
0040 .dbline 32
0040 0AEF ldi R16,250
0042 E9DF xcall _delay
0044 .dbline 32
0044 0AEF ldi R16,250
0046 E7DF xcall _delay
0048 .dbline 33
0048 0AEF ldi R16,250
004A E5DF xcall _delay
004C .dbline 33
004C 0AEF ldi R16,250
004E E3DF xcall _delay
0050 .dbline 33
0050 0AEF ldi R16,250
0052 E1DF xcall _delay
0054 .dbline 34
0054 0AEF ldi R16,250
0056 DFDF xcall _delay
0058 .dbline 34
0058 0AEF ldi R16,250
005A DDDF xcall _delay
005C .dbline 34
005C 0AEF ldi R16,250
005E DBDF xcall _delay
0060 .dbline 35
0060 8FEF ldi R24,255
0062 85BB out 0x15,R24
0064 .dbline 36
0064 0AEF ldi R16,250
0066 D7DF xcall _delay
0068 .dbline 36
0068 0AEF ldi R16,250
006A D5DF xcall _delay
006C .dbline 36
006C 0AEF ldi R16,250
006E D3DF xcall _delay
0070 .dbline 37
0070 0AEF ldi R16,250
0072 D1DF xcall _delay
0074 .dbline 37
0074 0AEF ldi R16,250
0076 CFDF xcall _delay
0078 .dbline 37
0078 0AEF ldi R16,250
007A CDDF xcall _delay
007C .dbline 38
007C 0AEF ldi R16,250
007E CBDF xcall _delay
0080 .dbline 38
0080 0AEF ldi R16,250
0082 C9DF xcall _delay
0084 .dbline 38
0084 0AEF ldi R16,250
0086 C7DF xcall _delay
0088 .dbline 39
0088 2224 clr R2
008A 25BA out 0x15,R2
008C .dbline 40
008C L13:
008C .dbline 30
008C D7CF xjmp L12
008E X0:
008E .dbline -2
008E L11:
008E .dbline 0 ; func end
008E 0895 ret
0090 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -