📄 myusart.lss
字号:
22c: 93 81 ldd r25, Z+3 ; 0x03
22e: 0e 94 7a 0f call 0x1ef4 ; 0x1ef4 <__mulsf3>
232: dc 01 movw r26, r24
234: cb 01 movw r24, r22
236: 8e 01 movw r16, r28
238: 05 54 subi r16, 0x45 ; 69
23a: 1f 4f sbci r17, 0xFF ; 255
23c: bc 01 movw r22, r24
23e: cd 01 movw r24, r26
240: 0e 94 a4 0d call 0x1b48 ; 0x1b48 <__fixunssfsi>
244: dc 01 movw r26, r24
246: cb 01 movw r24, r22
248: f8 01 movw r30, r16
24a: 91 83 std Z+1, r25 ; 0x01
24c: 80 83 st Z, r24
24e: 1f c0 rjmp .+62 ; 0x28e <info_display+0x12c>
250: fe 01 movw r30, r28
252: e7 54 subi r30, 0x47 ; 71
254: ff 4f sbci r31, 0xFF ; 255
256: 80 e9 ldi r24, 0x90 ; 144
258: 91 e0 ldi r25, 0x01 ; 1
25a: 91 83 std Z+1, r25 ; 0x01
25c: 80 83 st Z, r24
milliseconds can be achieved.
*/
void
_delay_loop_2(uint16_t __count)
{
__asm__ volatile (
25e: fe 01 movw r30, r28
260: e7 54 subi r30, 0x47 ; 71
262: ff 4f sbci r31, 0xFF ; 255
264: 80 81 ld r24, Z
266: 91 81 ldd r25, Z+1 ; 0x01
268: 01 97 sbiw r24, 0x01 ; 1
26a: f1 f7 brne .-4 ; 0x268 <info_display+0x106>
26c: fe 01 movw r30, r28
26e: e7 54 subi r30, 0x47 ; 71
270: ff 4f sbci r31, 0xFF ; 255
272: 91 83 std Z+1, r25 ; 0x01
274: 80 83 st Z, r24
while(__ticks)
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
276: de 01 movw r26, r28
278: a5 54 subi r26, 0x45 ; 69
27a: bf 4f sbci r27, 0xFF ; 255
27c: fe 01 movw r30, r28
27e: e5 54 subi r30, 0x45 ; 69
280: ff 4f sbci r31, 0xFF ; 255
282: 80 81 ld r24, Z
284: 91 81 ldd r25, Z+1 ; 0x01
286: 01 97 sbiw r24, 0x01 ; 1
288: 11 96 adiw r26, 0x01 ; 1
28a: 9c 93 st X, r25
28c: 8e 93 st -X, r24
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
28e: fe 01 movw r30, r28
290: e5 54 subi r30, 0x45 ; 69
292: ff 4f sbci r31, 0xFF ; 255
294: 80 81 ld r24, Z
296: 91 81 ldd r25, Z+1 ; 0x01
298: 00 97 sbiw r24, 0x00 ; 0
29a: d1 f6 brne .-76 ; 0x250 <info_display+0xee>
29c: 27 c0 rjmp .+78 ; 0x2ec <info_display+0x18a>
__ticks --;
}
return;
}
else
__ticks = (uint16_t)__tmp;
29e: 8e 01 movw r16, r28
2a0: 05 54 subi r16, 0x45 ; 69
2a2: 1f 4f sbci r17, 0xFF ; 255
2a4: fe 01 movw r30, r28
2a6: e3 54 subi r30, 0x43 ; 67
2a8: ff 4f sbci r31, 0xFF ; 255
2aa: 60 81 ld r22, Z
2ac: 71 81 ldd r23, Z+1 ; 0x01
2ae: 82 81 ldd r24, Z+2 ; 0x02
2b0: 93 81 ldd r25, Z+3 ; 0x03
2b2: 0e 94 a4 0d call 0x1b48 ; 0x1b48 <__fixunssfsi>
2b6: dc 01 movw r26, r24
2b8: cb 01 movw r24, r22
2ba: f8 01 movw r30, r16
2bc: 91 83 std Z+1, r25 ; 0x01
2be: 80 83 st Z, r24
2c0: de 01 movw r26, r28
2c2: a9 54 subi r26, 0x49 ; 73
2c4: bf 4f sbci r27, 0xFF ; 255
2c6: fe 01 movw r30, r28
2c8: e5 54 subi r30, 0x45 ; 69
2ca: ff 4f sbci r31, 0xFF ; 255
2cc: 80 81 ld r24, Z
2ce: 91 81 ldd r25, Z+1 ; 0x01
2d0: 8d 93 st X+, r24
2d2: 9c 93 st X, r25
2d4: fe 01 movw r30, r28
2d6: e9 54 subi r30, 0x49 ; 73
2d8: ff 4f sbci r31, 0xFF ; 255
2da: 80 81 ld r24, Z
2dc: 91 81 ldd r25, Z+1 ; 0x01
2de: 01 97 sbiw r24, 0x01 ; 1
2e0: f1 f7 brne .-4 ; 0x2de <info_display+0x17c>
2e2: fe 01 movw r30, r28
2e4: e9 54 subi r30, 0x49 ; 73
2e6: ff 4f sbci r31, 0xFF ; 255
2e8: 91 83 std Z+1, r25 ; 0x01
2ea: 80 83 st Z, r24
data_write(data_01,51); _delay_ms(256);
2ec: 81 e1 ldi r24, 0x11 ; 17
2ee: 91 e0 ldi r25, 0x01 ; 1
2f0: 63 e3 ldi r22, 0x33 ; 51
2f2: 0e 94 8d 00 call 0x11a ; 0x11a <data_write>
2f6: fe 01 movw r30, r28
2f8: ed 54 subi r30, 0x4D ; 77
2fa: ff 4f sbci r31, 0xFF ; 255
2fc: 80 e0 ldi r24, 0x00 ; 0
2fe: 90 e0 ldi r25, 0x00 ; 0
300: a0 e8 ldi r26, 0x80 ; 128
302: b3 e4 ldi r27, 0x43 ; 67
304: 80 83 st Z, r24
306: 91 83 std Z+1, r25 ; 0x01
308: a2 83 std Z+2, r26 ; 0x02
30a: b3 83 std Z+3, r27 ; 0x03
*/
void
_delay_ms(double __ms)
{
uint16_t __ticks;
double __tmp = ((F_CPU) / 4e3) * __ms;
30c: 8e 01 movw r16, r28
30e: 01 55 subi r16, 0x51 ; 81
310: 1f 4f sbci r17, 0xFF ; 255
312: fe 01 movw r30, r28
314: ed 54 subi r30, 0x4D ; 77
316: ff 4f sbci r31, 0xFF ; 255
318: 20 e0 ldi r18, 0x00 ; 0
31a: 30 e0 ldi r19, 0x00 ; 0
31c: 4a e7 ldi r20, 0x7A ; 122
31e: 55 e4 ldi r21, 0x45 ; 69
320: 60 81 ld r22, Z
322: 71 81 ldd r23, Z+1 ; 0x01
324: 82 81 ldd r24, Z+2 ; 0x02
326: 93 81 ldd r25, Z+3 ; 0x03
328: 0e 94 7a 0f call 0x1ef4 ; 0x1ef4 <__mulsf3>
32c: dc 01 movw r26, r24
32e: cb 01 movw r24, r22
330: f8 01 movw r30, r16
332: 80 83 st Z, r24
334: 91 83 std Z+1, r25 ; 0x01
336: a2 83 std Z+2, r26 ; 0x02
338: b3 83 std Z+3, r27 ; 0x03
if (__tmp < 1.0)
33a: fe 01 movw r30, r28
33c: e1 55 subi r30, 0x51 ; 81
33e: ff 4f sbci r31, 0xFF ; 255
340: 20 e0 ldi r18, 0x00 ; 0
342: 30 e0 ldi r19, 0x00 ; 0
344: 40 e8 ldi r20, 0x80 ; 128
346: 5f e3 ldi r21, 0x3F ; 63
348: 60 81 ld r22, Z
34a: 71 81 ldd r23, Z+1 ; 0x01
34c: 82 81 ldd r24, Z+2 ; 0x02
34e: 93 81 ldd r25, Z+3 ; 0x03
350: 0e 94 d4 10 call 0x21a8 ; 0x21a8 <__ltsf2>
354: 88 23 and r24, r24
356: 44 f4 brge .+16 ; 0x368 <info_display+0x206>
__ticks = 1;
358: fe 01 movw r30, r28
35a: e3 55 subi r30, 0x53 ; 83
35c: ff 4f sbci r31, 0xFF ; 255
35e: 81 e0 ldi r24, 0x01 ; 1
360: 90 e0 ldi r25, 0x00 ; 0
362: 91 83 std Z+1, r25 ; 0x01
364: 80 83 st Z, r24
366: 64 c0 rjmp .+200 ; 0x430 <info_display+0x2ce>
else if (__tmp > 65535)
368: fe 01 movw r30, r28
36a: e1 55 subi r30, 0x51 ; 81
36c: ff 4f sbci r31, 0xFF ; 255
36e: 20 e0 ldi r18, 0x00 ; 0
370: 3f ef ldi r19, 0xFF ; 255
372: 4f e7 ldi r20, 0x7F ; 127
374: 57 e4 ldi r21, 0x47 ; 71
376: 60 81 ld r22, Z
378: 71 81 ldd r23, Z+1 ; 0x01
37a: 82 81 ldd r24, Z+2 ; 0x02
37c: 93 81 ldd r25, Z+3 ; 0x03
37e: 0e 94 74 10 call 0x20e8 ; 0x20e8 <__gtsf2>
382: 18 16 cp r1, r24
384: 0c f0 brlt .+2 ; 0x388 <info_display+0x226>
386: 43 c0 rjmp .+134 ; 0x40e <info_display+0x2ac>
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
388: fe 01 movw r30, r28
38a: ed 54 subi r30, 0x4D ; 77
38c: ff 4f sbci r31, 0xFF ; 255
38e: 20 e0 ldi r18, 0x00 ; 0
390: 30 e0 ldi r19, 0x00 ; 0
392: 40 e2 ldi r20, 0x20 ; 32
394: 51 e4 ldi r21, 0x41 ; 65
396: 60 81 ld r22, Z
398: 71 81 ldd r23, Z+1 ; 0x01
39a: 82 81 ldd r24, Z+2 ; 0x02
39c: 93 81 ldd r25, Z+3 ; 0x03
39e: 0e 94 7a 0f call 0x1ef4 ; 0x1ef4 <__mulsf3>
3a2: dc 01 movw r26, r24
3a4: cb 01 movw r24, r22
3a6: 8e 01 movw r16, r28
3a8: 03 55 subi r16, 0x53 ; 83
3aa: 1f 4f sbci r17, 0xFF ; 255
3ac: bc 01 movw r22, r24
3ae: cd 01 movw r24, r26
3b0: 0e 94 a4 0d call 0x1b48 ; 0x1b48 <__fixunssfsi>
3b4: dc 01 movw r26, r24
3b6: cb 01 movw r24, r22
3b8: f8 01 movw r30, r16
3ba: 91 83 std Z+1, r25 ; 0x01
3bc: 80 83 st Z, r24
3be: 1f c0 rjmp .+62 ; 0x3fe <info_display+0x29c>
3c0: fe 01 movw r30, r28
3c2: e5 55 subi r30, 0x55 ; 85
3c4: ff 4f sbci r31, 0xFF ; 255
3c6: 80 e9 ldi r24, 0x90 ; 144
3c8: 91 e0 ldi r25, 0x01 ; 1
3ca: 91 83 std Z+1, r25 ; 0x01
3cc: 80 83 st Z, r24
3ce: fe 01 movw r30, r28
3d0: e5 55 subi r30, 0x55 ; 85
3d2: ff 4f sbci r31, 0xFF ; 255
3d4: 80 81 ld r24, Z
3d6: 91 81 ldd r25, Z+1 ; 0x01
3d8: 01 97 sbiw r24, 0x01 ; 1
3da: f1 f7 brne .-4 ; 0x3d8 <info_display+0x276>
3dc: fe 01 movw r30, r28
3de: e5 55 subi r30, 0x55 ; 85
3e0: ff 4f sbci r31, 0xFF ; 255
3e2: 91 83 std Z+1, r25 ; 0x01
3e4: 80 83 st Z, r24
while(__ticks)
{
// wait 1/10 ms
_delay_loop_2(((F_CPU) / 4e3) / 10);
__ticks --;
3e6: de 01 movw r26, r28
3e8: a3 55 subi r26, 0x53 ; 83
3ea: bf 4f sbci r27, 0xFF ; 255
3ec: fe 01 movw r30, r28
3ee: e3 55 subi r30, 0x53 ; 83
3f0: ff 4f sbci r31, 0xFF ; 255
3f2: 80 81 ld r24, Z
3f4: 91 81 ldd r25, Z+1 ; 0x01
3f6: 01 97 sbiw r24, 0x01 ; 1
3f8: 11 96 adiw r26, 0x01 ; 1
3fa: 9c 93 st X, r25
3fc: 8e 93 st -X, r24
__ticks = 1;
else if (__tmp > 65535)
{
// __ticks = requested delay in 1/10 ms
__ticks = (uint16_t) (__ms * 10.0);
while(__ticks)
3fe: fe 01 movw r30, r28
400: e3 55 subi r30, 0x53 ; 83
402: ff 4f sbci r31, 0xFF ; 255
404: 80 81 ld r24, Z
406: 91 81 ldd r25, Z+1 ; 0x01
408: 00 97 sbiw r24, 0x00 ; 0
40a: d1 f6 brne .-76 ; 0x3c0 <info_display+0x25e>
40c: 27 c0 rjmp .+78 ; 0x45c <info_display+0x2fa>
__ticks --;
}
return;
}
else
__ticks = (uint16_t)__tmp;
40e: 8e 01 movw r16, r28
410: 03 55 subi r16, 0x53 ; 83
412: 1f 4f sbci r17, 0xFF ; 255
414: fe 01 movw r30, r28
416: e1 55 subi r30, 0x51 ; 81
418: ff 4f sbci r31, 0xFF ; 255
41a: 60 81 ld r22, Z
41c: 71 81 ldd r23, Z+1 ; 0x01
41e: 82 81 ldd r24, Z+2 ; 0x02
420: 93 81 ldd r25, Z+3 ; 0x03
422: 0e 94 a4 0d call 0x1b48 ; 0x1b48 <__fixunssfsi>
426: dc 01 movw r26, r24
428: cb 01 movw r24, r22
42a: f8 01 movw r30, r16
42c: 91 83 std Z+1, r25 ; 0x01
42e: 80 83 st Z, r24
430: de 01 movw r26, r28
432: a7 55 subi r26, 0x57 ; 87
434: bf 4f sbci r27, 0xFF ; 255
436: fe 01 movw r30, r28
438: e3 55 subi r30, 0x53 ; 83
43a: ff 4f sbci r31, 0xFF ; 255
43c: 80 81 ld r24, Z
43e: 91 81 ldd r25, Z+1 ; 0x01
440: 8d 93 st X+, r24
442: 9c 93 st X, r25
444: fe 01 movw r30, r28
446: e7 55 subi r30, 0x57 ; 87
448: ff 4f sbci r31, 0xFF ; 255
44a: 80 81 ld r24, Z
44c: 91 81 ldd r25, Z+1 ; 0x01
44e: 01 97 sbiw r24, 0x01 ; 1
450: f1 f7 brne .-4 ; 0x44e <info_display+0x2ec>
452: fe 01 movw r30, r28
454: e7 55 subi r30, 0x57 ; 87
456: ff 4f sbci r31, 0xFF ; 255
458: 91 83 std Z+1, r25 ; 0x01
45a: 80 83 st Z, r24
data_write(data_02,51); _delay_ms(256);
45c: 85 e4 ldi r24, 0x45 ; 69
45e: 91 e0 ldi r25, 0x01 ; 1
460: 63 e3 ldi r22, 0x33 ; 51
462: 0e 94 8d 00 call 0x11a ; 0x11a <data_write>
466: fe 01 movw r30, r28
468: eb 55 subi r30, 0x5B ; 91
46a: ff 4f sbci r31, 0xFF ; 255
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -