📄 timer.lst
字号:
1 .file "timer.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
16 .Ltext0:
17 .global SleepSub
19 SleepSub:
20 .LFB2:
21 .LM1:
22 /* prologue: frame size=0 */
23 /* prologue end (size=0) */
24 .LM2:
25 0000 2091 0000 lds r18,SlpTmFlag
26 0004 20FF sbrs r18,0
27 0006 00C0 rjmp .L2
28 .LM3:
29 0008 8091 0000 lds r24,RunMode
30 000c 90E0 ldi r25,lo8(0)
31 000e 8778 andi r24,lo8(135)
32 0010 9070 andi r25,hi8(135)
33 0012 8138 cpi r24,129
34 0014 9105 cpc r25,__zero_reg__
35 0016 01F0 breq .L5
36 0018 8138 cpi r24,129
37 001a 9105 cpc r25,__zero_reg__
38 001c 04F4 brge .+2
39 001e 00C0 rjmp .L22
40 0020 8438 cpi r24,132
41 0022 9105 cpc r25,__zero_reg__
42 0024 04F0 brlt .+2
43 0026 00C0 rjmp .L22
44 0028 00C0 rjmp .L23
45 .L5:
46 .LM4:
47 002a 8091 0000 lds r24,SetupTp
48 002e 8139 cpi r24,lo8(-111)
49 0030 00F4 brsh .+2
50 0032 00C0 rjmp .L22
51 .LM5:
52 0034 3091 0000 lds r19,SleepUnit
53 0038 3B35 cpi r19,lo8(91)
54 003a 00F4 brsh .L8
55 003c 23FD sbrc r18,3
56 003e 00C0 rjmp .L8
57 .LM6:
58 0040 8150 subi r24,lo8(-(-1))
59 0042 8093 0000 sts SetupTp,r24
60 .LM7:
61 0046 2860 ori r18,lo8(8)
62 0048 2093 0000 sts SlpTmFlag,r18
63 .L8:
64 .LM8:
65 004c 3D33 cpi r19,lo8(61)
66 004e 00F4 brsh .L11
67 0050 9091 0000 lds r25,SlpTmFlag
68 0054 94FD sbrc r25,4
69 0056 00C0 rjmp .L11
70 .LM9:
71 0058 8091 0000 lds r24,SetupTp
72 005c 8150 subi r24,lo8(-(-1))
73 005e 8093 0000 sts SetupTp,r24
74 .LM10:
75 0062 9061 ori r25,lo8(16)
76 0064 9093 0000 sts SlpTmFlag,r25
77 .L11:
78 .LM11:
79 0068 3323 tst r19
80 006a 01F4 brne .L22
81 006c 9091 0000 lds r25,SlpTmFlag
82 0070 95FD sbrc r25,5
83 0072 00C0 rjmp .L22
84 .LM12:
85 0074 8091 0000 lds r24,SetupTp
86 0078 8150 subi r24,lo8(-(-1))
87 007a 8093 0000 sts SetupTp,r24
88 .LM13:
89 007e 9062 ori r25,lo8(32)
90 0080 00C0 rjmp .L24
91 .L23:
92 .LM14:
93 0082 8091 0000 lds r24,SetupTp
94 0086 803A cpi r24,lo8(-96)
95 0088 00F4 brsh .L22
96 .LM15:
97 008a 9091 0000 lds r25,SleepUnit
98 008e 9D33 cpi r25,lo8(61)
99 0090 00F4 brsh .L17
100 0092 23FD sbrc r18,3
101 0094 00C0 rjmp .L17
102 .LM16:
103 0096 8F5F subi r24,lo8(-(1))
104 0098 8093 0000 sts SetupTp,r24
105 .LM17:
106 009c 2860 ori r18,lo8(8)
107 009e 2093 0000 sts SlpTmFlag,r18
108 .L17:
109 .LM18:
110 00a2 9923 tst r25
111 00a4 01F4 brne .L22
112 00a6 9091 0000 lds r25,SlpTmFlag
113 00aa 94FD sbrc r25,4
114 00ac 00C0 rjmp .L22
115 .LM19:
116 00ae 8091 0000 lds r24,SetupTp
117 00b2 8F5F subi r24,lo8(-(1))
118 00b4 8093 0000 sts SetupTp,r24
119 .LM20:
120 00b8 9061 ori r25,lo8(16)
121 .L24:
122 00ba 9093 0000 sts SlpTmFlag,r25
123 00be 0895 ret
124 .L2:
125 .LM21:
126 00c0 277C andi r18,lo8(-57)
127 00c2 2093 0000 sts SlpTmFlag,r18
128 .L22:
129 00c6 0895 ret
130 /* epilogue: frame size=0 */
131 /* epilogue: noreturn */
132 /* epilogue end (size=0) */
133 /* function SleepSub size 100 (100) */
134 .LFE2:
136 .global ClrAutoMode
138 ClrAutoMode:
139 .LFB4:
140 .LM22:
141 /* prologue: frame size=0 */
142 /* prologue end (size=0) */
143 .LM23:
144 00c8 9091 0000 lds r25,Sysflag2
145 00cc 95FF sbrs r25,5
146 00ce 00C0 rjmp .L26
147 .LM24:
148 00d0 8091 0000 lds r24,RunMode
149 00d4 887F andi r24,lo8(-8)
150 00d6 8093 0000 sts RunMode,r24
151 .LM25:
152 00da 9F7D andi r25,lo8(-33)
153 00dc 9093 0000 sts Sysflag2,r25
154 .L26:
155 .LM26:
156 00e0 8091 0000 lds r24,Sysflag2
157 00e4 8F77 andi r24,lo8(127)
158 00e6 8093 0000 sts Sysflag2,r24
159 /* epilogue: frame size=0 */
160 00ea 0895 ret
161 /* epilogue end (size=1) */
162 /* function ClrAutoMode size 18 (17) */
163 .LFE4:
165 .global SysOff
167 SysOff:
168 .LFB5:
169 .LM27:
170 /* prologue: frame size=0 */
171 /* prologue end (size=0) */
172 .LM28:
173 00ec 8091 0000 lds r24,RunMode
174 00f0 8F73 andi r24,lo8(63)
175 00f2 8093 0000 sts RunMode,r24
176 .LM29:
177 00f6 8091 0000 lds r24,Errorflg
178 00fa 8F73 andi r24,lo8(63)
179 00fc 8093 0000 sts Errorflg,r24
180 .LM30:
181 0100 8091 0000 lds r24,Sysflag2
182 0104 8F77 andi r24,lo8(127)
183 0106 8093 0000 sts Sysflag2,r24
184 /* epilogue: frame size=0 */
185 010a 0895 ret
186 /* epilogue end (size=1) */
187 /* function SysOff size 16 (15) */
188 .LFE5:
190 .global TurnSysOff
192 TurnSysOff:
193 .LFB6:
194 .LM31:
195 /* prologue: frame size=0 */
196 /* prologue end (size=0) */
197 .LM32:
198 010c 8091 0000 lds r24,RunMode
199 0110 86FF sbrs r24,6
200 0112 00C0 rjmp .L34
201 .LM33:
202 0114 8EE0 ldi r24,lo8(14)
203 0116 8093 0000 sts BuzCntr,r24
204 .LM34:
205 011a 0E94 0000 call SysOff
206 .L34:
207 011e 0895 ret
208 /* epilogue: frame size=0 */
209 /* epilogue: noreturn */
210 /* epilogue end (size=0) */
211 /* function TurnSysOff size 10 (10) */
212 .LFE6:
214 .global TurnSysOn
216 TurnSysOn:
217 .LFB7:
218 .LM35:
219 /* prologue: frame size=0 */
220 /* prologue end (size=0) */
221 .LM36:
222 0120 8091 0000 lds r24,RunMode
223 0124 86FD sbrc r24,6
224 0126 00C0 rjmp .L38
225 .LM37:
226 0128 0E94 0000 call ClrAutoMode
227 .LM38:
228 012c 8EE8 ldi r24,lo8(-114)
229 012e 8093 0000 sts BuzCntr,r24
230 .LM39:
231 0132 8091 0000 lds r24,RunMode
232 0136 8064 ori r24,lo8(64)
233 0138 8093 0000 sts RunMode,r24
234 .LM40:
235 013c 1092 0000 sts Errorflg2,__zero_reg__
236 .L38:
237 0140 0895 ret
238 /* epilogue: frame size=0 */
239 /* epilogue: noreturn */
240 /* epilogue end (size=0) */
241 /* function TurnSysOn size 17 (17) */
242 .LFE7:
244 .global TimeOn
246 TimeOn:
247 .LFB8:
248 .LM41:
249 /* prologue: frame size=0 */
250 /* prologue end (size=0) */
251 .LM42:
252 0142 8091 0000 lds r24,TurnOn
253 0146 9091 0000 lds r25,(TurnOn)+1
254 014a 892B or r24,r25
255 014c 01F0 breq .L40
256 .LM43:
257 014e 0E94 0000 call TurnSysOff
258 0152 0895 ret
259 .L40:
260 .LM44:
261 0154 8091 0000 lds r24,SlpTmFlag
262 0158 8D7F andi r24,lo8(-3)
263 015a 8093 0000 sts SlpTmFlag,r24
264 .LM45:
265 015e 0E94 0000 call TurnSysOn
266 0162 0895 ret
267 /* epilogue: frame size=0 */
268 /* epilogue: noreturn */
269 /* epilogue end (size=0) */
270 /* function TimeOn size 17 (17) */
271 .LFE8:
273 .global TimeOff
275 TimeOff:
276 .LFB9:
277 .LM46:
278 /* prologue: frame size=0 */
279 /* prologue end (size=0) */
280 .LM47:
281 0164 8091 0000 lds r24,TurnOff
282 0168 9091 0000 lds r25,(TurnOff)+1
283 016c 892B or r24,r25
284 016e 01F0 breq .L45
285 .LM48:
286 0170 0E94 0000 call TurnSysOn
287 0174 0895 ret
288 .L45:
289 .LM49:
290 0176 8091 0000 lds r24,SlpTmFlag
291 017a 8B7F andi r24,lo8(-5)
292 017c 8093 0000 sts SlpTmFlag,r24
293 .LM50:
294 0180 0E94 0000 call TurnSysOff
295 0184 0895 ret
296 /* epilogue: frame size=0 */
297 /* epilogue: noreturn */
298 /* epilogue end (size=0) */
299 /* function TimeOff size 17 (17) */
300 .LFE9:
302 .global TimerOnOff
304 TimerOnOff:
305 .LFB3:
306 .LM51:
307 /* prologue: frame size=0 */
308 /* prologue end (size=0) */
309 .LM52:
310 0186 8091 0000 lds r24,SlpTmFlag
311 018a 90E0 ldi r25,lo8(0)
312 018c 9C01 movw r18,r24
313 018e 2270 andi r18,lo8(2)
314 0190 3070 andi r19,hi8(2)
315 0192 82FF sbrs r24,2
316 0194 00C0 rjmp .L50
317 .LM53:
318 0196 232B or r18,r19
319 0198 01F0 breq .L52
320 .LM54:
321 019a 2091 0000 lds r18,TurnOn
322 019e 3091 0000 lds r19,(TurnOn)+1
323 01a2 8091 0000 lds r24,TurnOff
324 01a6 9091 0000 lds r25,(TurnOff)+1
325 01aa 2817 cp r18,r24
326 01ac 3907 cpc r19,r25
327 01ae 00F4 brsh .L52
328 .LM55:
329 01b0 0E94 0000 call TimeOn
330 01b4 0895 ret
331 .L52:
332 .LM56:
333 01b6 0E94 0000 call TimeOff
334 01ba 0895 ret
335 .L50:
336 .LM57:
337 01bc 232B or r18,r19
338 01be 01F0 breq .L58
339 .LM58:
340 01c0 0E94 0000 call TimeOn
341 .L58:
342 01c4 0895 ret
343 /* epilogue: frame size=0 */
344 /* epilogue: noreturn */
345 /* epilogue end (size=0) */
346 /* function TimerOnOff size 32 (32) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -