📄 spokepov.lss
字号:
30a: 1f 92 push r1
30c: 0f 92 push r0
30e: 0f b6 in r0, 0x3f ; 63
310: 0f 92 push r0
312: 11 24 eor r1, r1
314: 2f 93 push r18
316: 3f 93 push r19
318: 4f 93 push r20
31a: 5f 93 push r21
31c: 6f 93 push r22
31e: 7f 93 push r23
320: 8f 93 push r24
322: 9f 93 push r25
324: af 93 push r26
326: bf 93 push r27
328: cf 93 push r28
32a: df 93 push r29
32c: ef 93 push r30
32e: ff 93 push r31
330: c0 e0 ldi r28, 0x00 ; 0
332: d0 e0 ldi r29, 0x00 ; 0
334: 82 99 sbic 0x10, 2 ; 16
336: 05 c0 rjmp .+10 ; 0x342 <__vector_1+0x38>
338: 21 96 adiw r28, 0x01 ; 1
33a: 81 e0 ldi r24, 0x01 ; 1
33c: dc df rcall .-72 ; 0x2f6 <delay_ms>
33e: 82 9b sbis 0x10, 2 ; 16
340: fb cf rjmp .-10 ; 0x338 <__vector_1+0x2e>
342: c5 36 cpi r28, 0x65 ; 101
344: d1 05 cpc r29, r1
346: 60 f0 brcs .+24 ; 0x360 <__vector_1+0x56>
348: c4 5f subi r28, 0xF4 ; 244
34a: d1 40 sbci r29, 0x01 ; 1
34c: 18 f4 brcc .+6 ; 0x354 <__vector_1+0x4a>
34e: 88 e0 ldi r24, 0x08 ; 8
350: 81 bd out 0x21, r24 ; 33
352: ff cf rjmp .-2 ; 0x352 <__vector_1+0x48>
354: 8f ef ldi r24, 0xFF ; 255
356: 9f ef ldi r25, 0xFF ; 255
358: 90 93 88 00 sts 0x0088, r25
35c: 80 93 87 00 sts 0x0087, r24
360: ff 91 pop r31
362: ef 91 pop r30
364: df 91 pop r29
366: cf 91 pop r28
368: bf 91 pop r27
36a: af 91 pop r26
36c: 9f 91 pop r25
36e: 8f 91 pop r24
370: 7f 91 pop r23
372: 6f 91 pop r22
374: 5f 91 pop r21
376: 4f 91 pop r20
378: 3f 91 pop r19
37a: 2f 91 pop r18
37c: 0f 90 pop r0
37e: 0f be out 0x3f, r0 ; 63
380: 0f 90 pop r0
382: 1f 90 pop r1
384: 18 95 reti
00000386 <__vector_2>:
386: 1f 92 push r1
388: 0f 92 push r0
38a: 0f b6 in r0, 0x3f ; 63
38c: 0f 92 push r0
38e: 11 24 eor r1, r1
390: ff 92 push r15
392: 0f 93 push r16
394: 1f 93 push r17
396: 2f 93 push r18
398: 3f 93 push r19
39a: 4f 93 push r20
39c: 5f 93 push r21
39e: 6f 93 push r22
3a0: 7f 93 push r23
3a2: 8f 93 push r24
3a4: 9f 93 push r25
3a6: af 93 push r26
3a8: bf 93 push r27
3aa: cf 93 push r28
3ac: ef 93 push r30
3ae: ff 93 push r31
3b0: a8 95 wdr
3b2: 80 91 86 00 lds r24, 0x0086
3b6: 85 30 cpi r24, 0x05 ; 5
3b8: 08 f4 brcc .+2 ; 0x3bc <__vector_2+0x36>
3ba: fc c0 rjmp .+504 ; 0x5b4 <__vector_2+0x22e>
3bc: 1d bc out 0x2d, r1 ; 45
3be: 1c bc out 0x2c, r1 ; 44
3c0: 80 91 87 00 lds r24, 0x0087
3c4: 90 91 88 00 lds r25, 0x0088
3c8: 8f 3f cpi r24, 0xFF ; 255
3ca: 91 05 cpc r25, r1
3cc: 08 f0 brcs .+2 ; 0x3d0 <__vector_2+0x4a>
3ce: e0 c0 rjmp .+448 ; 0x590 <__vector_2+0x20a>
3d0: 80 91 87 00 lds r24, 0x0087
3d4: 90 91 88 00 lds r25, 0x0088
3d8: 04 97 sbiw r24, 0x04 ; 4
3da: 08 f4 brcc .+2 ; 0x3de <__vector_2+0x58>
3dc: d9 c0 rjmp .+434 ; 0x590 <__vector_2+0x20a>
3de: 80 91 87 00 lds r24, 0x0087
3e2: 90 91 88 00 lds r25, 0x0088
3e6: 98 2f mov r25, r24
3e8: 88 27 eor r24, r24
3ea: 22 b7 in r18, 0x32 ; 50
3ec: 33 27 eor r19, r19
3ee: 82 2b or r24, r18
3f0: 93 2b or r25, r19
3f2: 9b bd out 0x2b, r25 ; 43
3f4: 8a bd out 0x2a, r24 ; 42
3f6: 12 be out 0x32, r1 ; 50
3f8: 80 91 63 00 lds r24, 0x0063
3fc: 8f 5f subi r24, 0xFF ; 255
3fe: 80 93 63 00 sts 0x0063, r24
402: 20 e0 ldi r18, 0x00 ; 0
404: 80 91 63 00 lds r24, 0x0063
408: 8a 33 cpi r24, 0x3A ; 58
40a: b8 f0 brcs .+46 ; 0x43a <__vector_2+0xb4>
40c: 90 e3 ldi r25, 0x30 ; 48
40e: e2 2f mov r30, r18
410: ff 27 eor r31, r31
412: ed 59 subi r30, 0x9D ; 157
414: ff 4f sbci r31, 0xFF ; 255
416: 90 83 st Z, r25
418: 23 30 cpi r18, 0x03 ; 3
41a: 41 f0 breq .+16 ; 0x42c <__vector_2+0xa6>
41c: 2f 5f subi r18, 0xFF ; 255
41e: e2 2f mov r30, r18
420: ff 27 eor r31, r31
422: ed 59 subi r30, 0x9D ; 157
424: ff 4f sbci r31, 0xFF ; 255
426: 80 81 ld r24, Z
428: 8f 5f subi r24, 0xFF ; 255
42a: 80 83 st Z, r24
42c: e2 2f mov r30, r18
42e: ff 27 eor r31, r31
430: ed 59 subi r30, 0x9D ; 157
432: ff 4f sbci r31, 0xFF ; 255
434: 80 81 ld r24, Z
436: 8a 33 cpi r24, 0x3A ; 58
438: 50 f7 brcc .-44 ; 0x40e <__vector_2+0x88>
43a: 80 91 62 00 lds r24, 0x0062
43e: 80 31 cpi r24, 0x10 ; 16
440: 08 f4 brcc .+2 ; 0x444 <__vector_2+0xbe>
442: 9a c0 rjmp .+308 ; 0x578 <__vector_2+0x1f2>
444: 80 91 62 00 lds r24, 0x0062
448: 80 51 subi r24, 0x10 ; 16
44a: 80 93 62 00 sts 0x0062, r24
44e: 80 91 60 00 lds r24, 0x0060
452: 8f 5f subi r24, 0xFF ; 255
454: 8f 70 andi r24, 0x0F ; 15
456: 80 93 60 00 sts 0x0060, r24
45a: f0 90 60 00 lds r15, 0x0060
45e: ff 20 and r15, r15
460: 09 f0 breq .+2 ; 0x464 <__vector_2+0xde>
462: 8a c0 rjmp .+276 ; 0x578 <__vector_2+0x1f2>
464: 80 91 61 00 lds r24, 0x0061
468: 8f 5f subi r24, 0xFF ; 255
46a: 80 93 61 00 sts 0x0061, r24
46e: 80 91 61 00 lds r24, 0x0061
472: 82 30 cpi r24, 0x02 ; 2
474: 11 f4 brne .+4 ; 0x47a <__vector_2+0xf4>
476: f0 92 61 00 sts 0x0061, r15
47a: 80 91 61 00 lds r24, 0x0061
47e: 99 27 eor r25, r25
480: c4 e0 ldi r28, 0x04 ; 4
482: 88 0f add r24, r24
484: 99 1f adc r25, r25
486: ca 95 dec r28
488: e1 f7 brne .-8 ; 0x482 <__vector_2+0xfc>
48a: 87 5d subi r24, 0xD7 ; 215
48c: 9f 4f sbci r25, 0xFF ; 255
48e: 40 e1 ldi r20, 0x10 ; 16
490: 50 e0 ldi r21, 0x00 ; 0
492: 68 2f mov r22, r24
494: 79 2f mov r23, r25
496: 8f e8 ldi r24, 0x8F ; 143
498: 90 e0 ldi r25, 0x00 ; 0
49a: 69 d1 rcall .+722 ; 0x76e <memcpy_P>
49c: 80 91 61 00 lds r24, 0x0061
4a0: e8 2f mov r30, r24
4a2: ff 27 eor r31, r31
4a4: ea 5d subi r30, 0xDA ; 218
4a6: ff 4f sbci r31, 0xFF ; 255
4a8: c8 95 lpm
4aa: 20 2d mov r18, r0
4ac: 22 23 and r18, r18
4ae: 61 f0 breq .+24 ; 0x4c8 <__vector_2+0x142>
4b0: 82 2f mov r24, r18
4b2: 99 27 eor r25, r25
4b4: 8f 70 andi r24, 0x0F ; 15
4b6: 90 70 andi r25, 0x00 ; 0
4b8: 81 57 subi r24, 0x71 ; 113
4ba: 9f 4f sbci r25, 0xFF ; 255
4bc: 90 93 73 00 sts 0x0073, r25
4c0: 80 93 72 00 sts 0x0072, r24
4c4: 20 93 71 00 sts 0x0071, r18
4c8: c0 91 61 00 lds r28, 0x0061
4cc: cf 5f subi r28, 0xFF ; 255
4ce: c2 30 cpi r28, 0x02 ; 2
4d0: 09 f4 brne .+2 ; 0x4d4 <__vector_2+0x14e>
4d2: cf 2d mov r28, r15
4d4: 0c 2f mov r16, r28
4d6: 11 27 eor r17, r17
4d8: 91 2f mov r25, r17
4da: 80 2f mov r24, r16
4dc: 82 95 swap r24
4de: 92 95 swap r25
4e0: 90 7f andi r25, 0xF0 ; 240
4e2: 98 27 eor r25, r24
4e4: 80 7f andi r24, 0xF0 ; 240
4e6: 98 27 eor r25, r24
4e8: 87 5d subi r24, 0xD7 ; 215
4ea: 9f 4f sbci r25, 0xFF ; 255
4ec: 40 e1 ldi r20, 0x10 ; 16
4ee: 50 e0 ldi r21, 0x00 ; 0
4f0: 68 2f mov r22, r24
4f2: 79 2f mov r23, r25
4f4: 8f e9 ldi r24, 0x9F ; 159
4f6: 90 e0 ldi r25, 0x00 ; 0
4f8: 3a d1 rcall .+628 ; 0x76e <memcpy_P>
4fa: 0a 5d subi r16, 0xDA ; 218
4fc: 1f 4f sbci r17, 0xFF ; 255
4fe: f1 2f mov r31, r17
500: e0 2f mov r30, r16
502: c8 95 lpm
504: 20 2d mov r18, r0
506: 22 23 and r18, r18
508: 61 f0 breq .+24 ; 0x522 <__vector_2+0x19c>
50a: 82 2f mov r24, r18
50c: 99 27 eor r25, r25
50e: 8f 70 andi r24, 0x0F ; 15
510: 90 70 andi r25, 0x00 ; 0
512: 81 56 subi r24, 0x61 ; 97
514: 9f 4f sbci r25, 0xFF ; 255
516: 90 93 73 00 sts 0x0073, r25
51a: 80 93 72 00 sts 0x0072, r24
51e: 20 93 71 00 sts 0x0071, r18
522: cf 5f subi r28, 0xFF ; 255
524: c2 30 cpi r28, 0x02 ; 2
526: 09 f4 brne .+2 ; 0x52a <__vector_2+0x1a4>
528: cf 2d mov r28, r15
52a: 0c 2f mov r16, r28
52c: 11 27 eor r17, r17
52e: 91 2f mov r25, r17
530: 80 2f mov r24, r16
532: 82 95 swap r24
534: 92 95 swap r25
536: 90 7f andi r25, 0xF0 ; 240
538: 98 27 eor r25, r24
53a: 80 7f andi r24, 0xF0 ; 240
53c: 98 27 eor r25, r24
53e: 87 5d subi r24, 0xD7 ; 215
540: 9f 4f sbci r25, 0xFF ; 255
542: 40 e1 ldi r20, 0x10 ; 16
544: 50 e0 ldi r21, 0x00 ; 0
546: 68 2f mov r22, r24
548: 79 2f mov r23, r25
54a: 86 e7 ldi r24, 0x76 ; 118
54c: 90 e0 ldi r25, 0x00 ; 0
54e: 0f d1 rcall .+542 ; 0x76e <memcpy_P>
550: 0a 5d subi r16, 0xDA ; 218
552: 1f 4f sbci r17, 0xFF ; 255
554: f1 2f mov r31, r17
556: e0 2f mov r30, r16
558: c8 95 lpm
55a: 00 2d mov r16, r0
55c: 00 23 and r16, r16
55e: 61 f0 breq .+24 ; 0x578 <__vector_2+0x1f2>
560: 80 2f mov r24, r16
562: 99 27 eor r25, r25
564: 8f 70 andi r24, 0x0F ; 15
566: 90 70 andi r25, 0x00 ; 0
568: 8a 58 subi r24, 0x8A ; 138
56a: 9f 4f sbci r25, 0xFF ; 255
56c: 90 93 73 00 sts 0x0073, r25
570: 80 93 72 00 sts 0x0072, r24
574: 00 93 71 00 sts 0x0071, r16
578: 8f e0 ldi r24, 0x0F ; 15
57a: 80 93 6b 00 sts 0x006B, r24
57e: 80 93 6a 00 sts 0x006A, r24
582: 8e b5 in r24, 0x2e ; 46
584: 81 60 ori r24, 0x01 ; 1
586: 8e bd out 0x2e, r24 ; 46
588: 89 b7 in r24, 0x39 ; 57
58a: 80 64 ori r24, 0x40 ; 64
58c: 89 bf out 0x39, r24 ; 57
58e: 0e c0 rjmp .+28 ; 0x5ac <__vector_2+0x226>
590: 8c ef ldi r24, 0xFC ; 252
592: d3 dd rcall .-1114 ; 0x13a <set_all>
594: 8e b5 in r24, 0x2e ; 46
596: 8e 7f andi r24, 0xFE ; 254
598: 8e bd out 0x2e, r24 ; 46
59a: 80 e1 ldi r24, 0x10 ; 16
59c: 80 93 62 00 sts 0x0062, r24
5a0: 8f e0 ldi r24, 0x0F ; 15
5a2: 80 93 60 00 sts 0x0060, r24
5a6: 8f ef ldi r24, 0xFF ; 255
5a8: 80 93 61 00 sts 0x0061, r24
5ac: 10 92 88 00 sts 0x0088, r1
5b0: 10 92 87 00 sts 0x0087, r1
5b4: 10 92 86 00 sts 0x0086, r1
5b8: ff 91 pop r31
5ba: ef 91 pop r30
5bc: cf 91 pop r28
5be: bf 91 pop r27
5c0: af 91 pop r26
5c2: 9f 91 pop r25
5c4: 8f 91 pop r24
5c6: 7f 91 pop r23
5c8: 6f 91 pop r22
5ca: 5f 91 pop r21
5cc: 4f 91 pop r20
5ce: 3f 91 pop r19
5d0: 2f 91 pop r18
5d2: 1f 91 pop r17
5d4: 0f 91 pop r16
5d6: ff 90 pop r15
5d8: 0f 90 pop r0
5da: 0f be out 0x3f, r0 ; 63
5dc: 0f 90 pop r0
5de: 1f 90 pop r1
5e0: 18 95 reti
000005e2 <ioinit>:
5e2: 83 e7 ldi r24, 0x73 ; 115
5e4: 81 bb out 0x11, r24 ; 17
5e6: 8f ed ldi r24, 0xDF ; 223
5e8: 87 bb out 0x17, r24 ; 23
5ea: 80 e1 ldi r24, 0x10 ; 16
5ec: 88 bb out 0x18, r24 ; 24
5ee: 8c e4 ldi r24, 0x4C ; 76
5f0: 82 bb out 0x12, r24 ; 18
5f2: 98 e0 ldi r25, 0x08 ; 8
5f4: 95 bf out 0x35, r25 ; 53
5f6: 80 ec ldi r24, 0xC0 ; 192
5f8: 8b bf out 0x3b, r24 ; 59
5fa: 10 be out 0x30, r1 ; 48
5fc: 84 e0 ldi r24, 0x04 ; 4
5fe: 83 bf out 0x33, r24 ; 51
600: 89 b7 in r24, 0x39 ; 57
602: 82 60 ori r24, 0x02 ; 2
604: 89 bf out 0x39, r24 ; 57
606: 1f bc out 0x2f, r1 ; 47
608: 9e bd out 0x2e, r25 ; 46
60a: 10 92 86 00 sts 0x0086, r1
60e: 10 92 88 00 sts 0x0088, r1
612: 10 92 87 00 sts 0x0087, r1
616: 08 95 ret
00000618 <test_leds>:
}
// Test the LEDs on power-on. Runs through them
// quickly, then displays alternating LEDs, and
// finally puts them all on. This test sequence
// is slightly modified from the original, and
// makes it easier to see problems with the LEDs.
void test_leds(void) {
// Set groups of 8 LEDs to the same value.
// Note that the LED state is the opposite
// of what you might expect:
//
// 0 bits = on, 1 bits = off!
// Light every other LED
set_all(0xAA);
618: 8a ea ldi r24, 0xAA ; 170
61a: 8f dd rcall .-1250 ; 0x13a <set_all>
delay_ms(100);
61c: 84 e6 ldi r24, 0x64 ; 100
61e: 6b de rcall .-810 ; 0x2f6 <delay_ms>
// Now light the other LEDs
set_all(0x55);
620: 85 e5 ldi r24, 0x55 ; 85
622: 8b dd rcall .-1258 ; 0x13a <set_all>
delay_ms(100);
624: 84 e6 ldi r24, 0x64 ; 100
626: 67 de rcall .-818 ; 0x2f6 <delay_ms>
// Now light all LEDs
set_all(0x00);
628: 80 e0 ldi r24, 0x00 ; 0
62a: 87 dd rcall .-1266 ; 0x13a <set_all>
delay_ms(255);
62c: 8f ef ldi r24, 0xFF ; 255
62e: 63 de rcall .-826 ; 0x2f6 <delay_ms>
630: 08 95 ret
00000632 <main>:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -