📄 zdsmjp.lst
字号:
113 F129 BEQ 0x0139
114 3E6B CPI R22,0xEB
115 E0E0 LDI R30,0
116 077E CPC R23,R30
117 F0C9 BEQ 0x0131
118 3E6D CPI R22,0xED
119 E0E0 LDI R30,0
11A 077E CPC R23,R30
11B F069 BEQ 0x0129
11C 3E6E CPI R22,0xEE
11D E0E0 LDI R30,0
11E 077E CPC R23,R30
11F F009 BEQ 0x0121
120 C020 RJMP 0x0141
(0071) {
(0072) case 0xEE:
(0073) key=0x0;
121 2744 CLR R20
(0074) break;
122 C021 RJMP 0x0144
(0075) case 0xDE:
(0076) key=0x1;
123 E041 LDI R20,1
(0077) break;
124 C01F RJMP 0x0144
(0078) case 0xBE:
(0079) key=0x2;
125 E042 LDI R20,2
(0080) break;
126 C01D RJMP 0x0144
(0081) case 0x7E:
(0082) key=0x3;
127 E043 LDI R20,3
(0083) break;
128 C01B RJMP 0x0144
(0084) case 0xED:
(0085) key=0x4;
129 E044 LDI R20,4
(0086) break;
12A C019 RJMP 0x0144
(0087) case 0xDD:
(0088) key=0x5;
12B E045 LDI R20,5
(0089) break;
12C C017 RJMP 0x0144
(0090) case 0xBD:
(0091) key=0x6;
12D E046 LDI R20,6
(0092) break;
12E C015 RJMP 0x0144
(0093) case 0x7D:
(0094) key=0x7;
12F E047 LDI R20,7
(0095) break;
130 C013 RJMP 0x0144
(0096) case 0xEB:
(0097) key=0x8;
131 E048 LDI R20,0x8
(0098) break;
132 C011 RJMP 0x0144
(0099) case 0xDB:
(0100) key=0x9;
133 E049 LDI R20,0x9
(0101) break;
134 C00F RJMP 0x0144
(0102) case 0xBB:
(0103) key=0xA;
135 E04A LDI R20,0xA
(0104) break;
136 C00D RJMP 0x0144
(0105) case 0x7B:
(0106) key=0xB;
137 E04B LDI R20,0xB
(0107) break;
138 C00B RJMP 0x0144
(0108) case 0xE7:
(0109) key=0xC;
139 E04C LDI R20,0xC
(0110) break;
13A C009 RJMP 0x0144
(0111) case 0xD7:
(0112) key=0xD;
13B E04D LDI R20,0xD
(0113) break;
13C C007 RJMP 0x0144
(0114) case 0xB7:
(0115) key=0xE;
13D E04E LDI R20,0xE
(0116) break;
13E C005 RJMP 0x0144
(0117) case 0x77:
(0118) key=0xF;
13F E04F LDI R20,0xF
(0119) break;
140 C003 RJMP 0x0144
(0120) default:
(0121) key=16;
141 E140 LDI R20,0x10
(0122) }
(0123) }
142 C001 RJMP 0x0144
(0124) else
(0125) {
(0126) key=16;
143 E140 LDI R20,0x10
(0127) }
(0128) return key;
144 2F04 MOV R16,R20
145 940C 01D7 JMP pop_xgsetF00C
_miao:
147 920A ST R0,-Y
148 921A ST R1,-Y
149 922A ST R2,-Y
14A 923A ST R3,-Y
14B 924A ST R4,-Y
14C 925A ST R5,-Y
14D 926A ST R6,-Y
14E 927A ST R7,-Y
14F 928A ST R8,-Y
150 929A ST R9,-Y
151 930A ST R16,-Y
152 931A ST R17,-Y
153 932A ST R18,-Y
154 933A ST R19,-Y
155 938A ST R24,-Y
156 939A ST R25,-Y
157 93AA ST R26,-Y
158 93BA ST R27,-Y
159 93EA ST R30,-Y
15A 93FA ST R31,-Y
15B B60F IN R0,0x3F
15C 920A ST R0,-Y
(0129) }
(0130) void miao()
(0131) {
(0132) if(num==60)
15D 9180 0060 LDS R24,num
15F 338C CPI R24,0x3C
160 F419 BNE 0x0164
(0133) num=0;
161 2422 CLR R2
162 9220 0060 STS num,R2
(0134) num++;
164 9180 0060 LDS R24,num
166 5F8F SUBI R24,0xFF
167 9380 0060 STS num,R24
(0135) TCNT1H=0X85;
169 E885 LDI R24,0x85
16A BD8D OUT 0x2D,R24
(0136) TCNT1L=0XED;
16B EE8D LDI R24,0xED
16C BD8C OUT 0x2C,R24
(0137) if(key_press())
16D DF29 RCALL _key_press
16E 2300 TST R16
16F F019 BEQ 0x0173
(0138) {
(0139) l=key_scan();
170 DF37 RCALL _key_scan
171 9300 0061 STS l,R16
(0140) //show(l,3);
(0141) }
173 9009 LD R0,Y+
174 BE0F OUT 0x3F,R0
175 91F9 LD R31,Y+
176 91E9 LD R30,Y+
177 91B9 LD R27,Y+
178 91A9 LD R26,Y+
179 9199 LD R25,Y+
17A 9189 LD R24,Y+
17B 9139 LD R19,Y+
17C 9129 LD R18,Y+
17D 9119 LD R17,Y+
17E 9109 LD R16,Y+
17F 9099 LD R9,Y+
180 9089 LD R8,Y+
181 9079 LD R7,Y+
182 9069 LD R6,Y+
183 9059 LD R5,Y+
184 9049 LD R4,Y+
185 9039 LD R3,Y+
186 9029 LD R2,Y+
187 9019 LD R1,Y+
188 9009 LD R0,Y+
189 9518 RETI
(0142) }
(0143) void main()
(0144) {
(0145) DDRB=0XFF;
_main:
18A EF8F LDI R24,0xFF
18B BB87 OUT 0x17,R24
(0146) DDRA|=0X18;//573锁存端
18C B38A IN R24,0x1A
18D 6188 ORI R24,0x18
18E BB8A OUT 0x1A,R24
(0147)
(0148) TCCR1B=0X04;//T/C1控制寄存器B
18F E084 LDI R24,4
190 BD8E OUT 0x2E,R24
(0149) TCNT1H=0X85;//计数寄存器(高位)
191 E885 LDI R24,0x85
192 BD8D OUT 0x2D,R24
(0150) TCNT1L=0XED;//计数寄存器(低位)
193 EE8D LDI R24,0xED
194 BD8C OUT 0x2C,R24
(0151) TIMSK|=BIT(2);//T/C1中断屏蔽寄存器
195 B789 IN R24,0x39
196 6084 ORI R24,4
197 BF89 OUT 0x39,R24
(0152) SREG|=BIT(7);//总中断
198 9478 BSET 7
199 C012 RJMP 0x01AC
(0153)
(0154) while(1)
(0155) {
(0156) show(num/10,1);
19A E021 LDI R18,1
19B E01A LDI R17,0xA
19C 9100 0060 LDS R16,num
19E 940E 01B0 CALL div8u
1A0 DED2 RCALL _show
(0157) show(num%10,0);
1A1 2722 CLR R18
1A2 E01A LDI R17,0xA
1A3 9100 0060 LDS R16,num
1A5 940E 01AE CALL mod8u
1A7 DECB RCALL _show
(0158) show(l,3);
FILE: <library>
1A8 E023 LDI R18,3
1A9 9100 0061 LDS R16,l
1AB DEC7 RCALL _show
1AC CFED RJMP 0x019A
1AD 9508 RET
mod8u:
1AE 9468 BSET 6
1AF C001 RJMP xdiv8u
div8u:
1B0 94E8 BCLR 6
xdiv8u:
1B1 932A ST R18,-Y
1B2 92FA ST R15,-Y
1B3 92EA ST R14,-Y
1B4 24FF CLR R15
1B5 24EE CLR R14
1B6 E120 LDI R18,0x10
1B7 0F00 LSL R16
1B8 1CFF ROL R15
1B9 1CEE ROL R14
1BA 16E1 CP R14,R17
1BB F010 BCS 0x01BE
1BC 1AE1 SUB R14,R17
1BD 9503 INC R16
1BE 952A DEC R18
1BF F7B9 BNE 0x01B7
1C0 F40E BRTC 0x01C2
1C1 2D0E MOV R16,R14
1C2 90E9 LD R14,Y+
1C3 90F9 LD R15,Y+
1C4 9129 LD R18,Y+
1C5 9508 RET
push_xgsetF000:
1C6 937A ST R23,-Y
1C7 936A ST R22,-Y
1C8 935A ST R21,-Y
1C9 934A ST R20,-Y
1CA 9508 RET
pop_xgsetF000:
1CB 9149 LD R20,Y+
1CC 9159 LD R21,Y+
1CD 9169 LD R22,Y+
1CE 9179 LD R23,Y+
1CF 9508 RET
push_xgsetF00C:
1D0 937A ST R23,-Y
1D1 936A ST R22,-Y
1D2 935A ST R21,-Y
1D3 934A ST R20,-Y
1D4 92BA ST R11,-Y
1D5 92AA ST R10,-Y
1D6 9508 RET
pop_xgsetF00C:
1D7 90A9 LD R10,Y+
1D8 90B9 LD R11,Y+
1D9 9149 LD R20,Y+
1DA 9159 LD R21,Y+
1DB 9169 LD R22,Y+
1DC 9179 LD R23,Y+
1DD 9508 RET
lsl8:
1DE 2311 TST R17
1DF F019 BEQ 0x01E3
1E0 0F00 LSL R16
1E1 951A DEC R17
1E2 CFFB RJMP lsl8
1E3 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -