📄 example1.lst
字号:
__start:
__text_start:
2A E5CF LDI R28,0x5F
2B E0D4 LDI R29,4
2C BFCD OUT 0x3D,R28
2D BFDE OUT 0x3E,R29
2E 51C0 SUBI R28,0x10
2F 40D0 SBCI R29,0
30 EA0A LDI R16,0xAA
31 8308 STD Y+0,R16
32 2400 CLR R0
33 E6E0 LDI R30,0x60
34 E0F0 LDI R31,0
35 E010 LDI R17,0
36 36E0 CPI R30,0x60
37 07F1 CPC R31,R17
38 F011 BEQ 0x003B
39 9201 ST R0,Z+
3A CFFB RJMP 0x0036
3B 8300 STD Z+0,R16
3C E5E4 LDI R30,0x54
3D E0F0 LDI R31,0
3E E6A0 LDI R26,0x60
3F E0B0 LDI R27,0
40 E010 LDI R17,0
41 E000 LDI R16,0
42 BF0B OUT 0x3B,R16
43 35E4 CPI R30,0x54
44 07F1 CPC R31,R17
45 F021 BEQ 0x004A
46 95C8 LPM
47 9631 ADIW R30,1
48 920D ST R0,X+
49 CFF9 RJMP 0x0043
4A 940E 0063 CALL _main
_exit:
4C CFFF RJMP _exit
FILE: G:\学习\avr\天祥电子AVR视频教程\chengxu\example\example1.c
(0001) #include <iom16v.h>
(0002)
(0003) void delay_1ms(void)
(0004) {
(0005) unsigned char i;
(0006) for(i=0;i<5000;i++);
_delay_1ms:
i --> R16
4D 2700 CLR R16
4E C001 RJMP 0x0050
4F 9503 INC R16
50 3808 CPI R16,0x88
51 F3E8 BCS 0x004F
52 9508 RET
_delay_ms:
i --> R10
time --> R12
53 92AA ST R10,-Y
54 92CA ST R12,-Y
55 2EC0 MOV R12,R16
(0007) }
(0008) void delay_ms(unsigned char time)
(0009) {
(0010) unsigned char i;
(0011) for(i=0;i<time;i++)
56 24AA CLR R10
57 C002 RJMP 0x005A
(0012) {
(0013) delay_1ms();
58 DFF4 RCALL _delay_1ms
59 94A3 INC R10
5A 14AC CP R10,R12
5B F3E0 BCS 0x0058
5C 90C9 LD R12,Y+
5D 90A9 LD R10,Y+
5E 9508 RET
(0014) }
(0015) }
(0016)
(0017) void mcuInit(void)
(0018) {
(0019) DDRA = 0xFF;
_mcuInit:
5F EF8F LDI R24,0xFF
60 BB8A OUT 0x1A,R24
(0020) PORTA = 0xFF;
61 BB8B OUT 0x1B,R24
62 9508 RET
(0021) }
(0022) /*led交替点亮/熄灭*/
(0023) void main(void)
(0024) {
(0025) mcuInit();
_main:
63 DFFB RCALL _mcuInit
64 C008 RJMP 0x006D
(0026) while(1)
(0027) {
(0028) PORTA = 0X00; //点亮led
65 2422 CLR R2
66 BA2B OUT 0x1B,R2
(0029) delay_ms(1000); //点亮2秒钟
67 EE08 LDI R16,0xE8
68 DFEA RCALL _delay_ms
(0030) PORTA = 0XFF; //关闭led
69 EF8F LDI R24,0xFF
6A BB8B OUT 0x1B,R24
(0031) delay_ms(1000); //关闭2秒钟
FILE: <library>
6B EE08 LDI R16,0xE8
6C DFE6 RCALL _delay_ms
6D CFF7 RJMP 0x0065
6E 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -