📄 训练项目四:扩展io口的使用.lst
字号:
NO DEBUG INFORMATION AVAILABLE!
__text_start:
__start:
30 EFCF LDI R28,0xFF
31 E0DF LDI R29,0xF
32 BFCD OUT 0x3D,R28
33 BFDE OUT 0x3E,R29
34 51C0 SUBI R28,0x10
35 40D0 SBCI R29,0
36 EA0A LDI R16,0xAA
37 8308 STD Y+0,R16
38 2400 CLR R0
39 E6E0 LDI R30,0x60
3A E0F0 LDI R31,0
3B E010 LDI R17,0
3C 36E0 CPI R30,0x60
3D 07F1 CPC R31,R17
3E F011 BEQ 0x0041
3F 9201 ST R0,Z+
40 CFFB RJMP 0x003C
41 8300 STD Z+0,R16
42 E6E0 LDI R30,0x60
43 E0F0 LDI R31,0
44 E6A0 LDI R26,0x60
45 E0B0 LDI R27,0
46 E010 LDI R17,0
47 E000 LDI R16,0
48 BF0B OUT 0x3B,R16
49 36E0 CPI R30,0x60
4A 07F1 CPC R31,R17
4B F021 BEQ 0x0050
4C 95C8 LPM
4D 9631 ADIW R30,1
4E 920D ST R0,X+
4F CFF9 RJMP 0x0049
50 940E 0087 CALL _main
_exit:
52 CFFF RJMP _exit
_init:
53 B785 IN R24,0x35
54 6880 ORI R24,0x80
55 BF85 OUT 0x35,R24
56 E880 LDI R24,0x80
57 9380 006C STS 0x006C,R24
59 E800 LDI R16,0x80
5A E010 LDI R17,0
5B D001 RCALL _w8255con
5C 9508 RET
_w8255con:
5D 934A ST R20,-Y
5E 935A ST R21,-Y
5F E043 LDI R20,3
60 E850 LDI R21,0x80
61 01FA MOVW R30,R20
62 8300 STD Z+0,R16
63 9159 LD R21,Y+
64 9149 LD R20,Y+
65 9508 RET
_w8255a:
66 934A ST R20,-Y
67 935A ST R21,-Y
68 E040 LDI R20,0
69 E850 LDI R21,0x80
6A 01FA MOVW R30,R20
6B 8300 STD Z+0,R16
6C 9159 LD R21,Y+
6D 9149 LD R20,Y+
6E 9508 RET
_delay_1ms:
6F E001 LDI R16,1
70 E010 LDI R17,0
71 C002 RJMP 0x0074
72 5F0F SUBI R16,0xFF
73 4F1F SBCI R17,0xFF
74 3D04 CPI R16,0xD4
75 E0E8 LDI R30,0x8
76 071E CPC R17,R30
77 F3D0 BCS 0x0072
78 9508 RET
_delay_nms:
79 940E 00B3 CALL push_xgset300C
7B 0158 MOVW R10,R16
7C 2744 CLR R20
7D 2755 CLR R21
7E C003 RJMP 0x0082
7F DFEF RCALL _delay_1ms
80 5F4F SUBI R20,0xFF
81 4F5F SBCI R21,0xFF
82 154A CP R20,R10
83 055B CPC R21,R11
84 F3D0 BCS 0x007F
85 940C 00B8 JMP pop_xgset300C
_main:
87 DFCB RCALL _init
88 C028 RJMP 0x00B1
89 EF0E LDI R16,0xFE
8A DFDB RCALL _w8255a
8B E500 LDI R16,0x50
8C E010 LDI R17,0
8D DFEB RCALL _delay_nms
8E EF0D LDI R16,0xFD
8F DFD6 RCALL _w8255a
90 E500 LDI R16,0x50
91 E010 LDI R17,0
92 DFE6 RCALL _delay_nms
93 EF0B LDI R16,0xFB
94 DFD1 RCALL _w8255a
95 E500 LDI R16,0x50
96 E010 LDI R17,0
97 DFE1 RCALL _delay_nms
98 EF07 LDI R16,0xF7
99 DFCC RCALL _w8255a
9A E500 LDI R16,0x50
9B E010 LDI R17,0
9C DFDC RCALL _delay_nms
9D EE0F LDI R16,0xEF
9E DFC7 RCALL _w8255a
9F E500 LDI R16,0x50
A0 E010 LDI R17,0
A1 DFD7 RCALL _delay_nms
A2 ED0F LDI R16,0xDF
A3 DFC2 RCALL _w8255a
A4 E500 LDI R16,0x50
A5 E010 LDI R17,0
A6 DFD2 RCALL _delay_nms
A7 EB0F LDI R16,0xBF
A8 DFBD RCALL _w8255a
A9 E500 LDI R16,0x50
AA E010 LDI R17,0
AB DFCD RCALL _delay_nms
AC E70F LDI R16,0x7F
AD DFB8 RCALL _w8255a
AE E500 LDI R16,0x50
AF E010 LDI R17,0
B0 DFC8 RCALL _delay_nms
B1 CFD7 RJMP 0x0089
B2 9508 RET
push_xgset300C:
B3 935A ST R21,-Y
B4 934A ST R20,-Y
B5 92BA ST R11,-Y
B6 92AA ST R10,-Y
B7 9508 RET
pop_xgset300C:
B8 90A9 LD R10,Y+
B9 90B9 LD R11,Y+
BA 9149 LD R20,Y+
BB 9159 LD R21,Y+
BC 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -