⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 旋转16个LED灯控制程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
 419 01be 09F0      		breq .+2
 420 01c0 51C0      		rjmp .L27
 421               	.LM59:
 422 01c2 DD24      		clr r13
 423               	.LM60:
 424 01c4 8C2D      		mov r24,r12
 425 01c6 9927      		clr r25
 426 01c8 0196      		adiw r24,1
 427 01ca 282F      		mov r18,r24
 428 01cc 392F      		mov r19,r25
 429 01ce 807F      		andi r24,lo8(496)
 430 01d0 9170      		andi r25,hi8(496)
 431 01d2 C22E      		mov r12,r18
 432 01d4 C81A      		sub r12,r24
 433               	.LM61:
 434 01d6 AC2D      		mov r26,r12
 435 01d8 BB27      		clr r27
 436 01da FB2F      		mov r31,r27
 437 01dc EA2F      		mov r30,r26
 438 01de E050      		subi r30,lo8(-(topLine))
 439 01e0 F040      		sbci r31,hi8(-(topLine))
 440 01e2 E081      		ld r30,Z
 441 01e4 E052      		subi r30,lo8(-(-32))
 442               	.LM62:
 443 01e6 8E2F      		mov r24,r30
 444 01e8 8695      		lsr r24
 445 01ea E82E      		mov r14,r24
 446 01ec FF24      		clr r15
 447 01ee 76E0      		ldi r23,6
 448 01f0 EE0C      	1:	lsl r14
 449 01f2 FF1C      		rol r15
 450 01f4 7A95      		dec r23
 451 01f6 E1F7      		brne 1b
 452 01f8 8E2F      		mov r24,r30
 453 01fa 9927      		clr r25
 454 01fc 8170      		andi r24,lo8(1)
 455 01fe 9070      		andi r25,hi8(1)
 456 0200 880F      		lsl r24
 457 0202 991F      		rol r25
 458 0204 E82A      		or r14,r24
 459 0206 F92A      		or r15,r25
 460               	.LM63:
 461 0208 FB2F      		mov r31,r27
 462 020a EA2F      		mov r30,r26
 463 020c E050      		subi r30,lo8(-(botLine))
 464 020e F040      		sbci r31,hi8(-(botLine))
 465 0210 E081      		ld r30,Z
 466 0212 E052      		subi r30,lo8(-(-32))
 467               	.LM64:
 468 0214 8E2F      		mov r24,r30
 469 0216 8695      		lsr r24
 470 0218 082F      		mov r16,r24
 471 021a 1127      		clr r17
 472 021c 6894      		set
 473 021e 15F8      		bld __zero_reg__,6-1
 474 0220 000F      	1:	lsl r16
 475 0222 111F      		rol r17
 476 0224 1694      		lsr __zero_reg__
 477 0226 E1F7      		brne 1b
 478 0228 8E2F      		mov r24,r30
 479 022a 9927      		clr r25
 480 022c 8170      		andi r24,lo8(1)
 481 022e 9070      		andi r25,hi8(1)
 482 0230 880F      		lsl r24
 483 0232 991F      		rol r25
 484 0234 082B      		or r16,r24
 485 0236 192B      		or r17,r25
 486               	.LM65:
 487 0238 A050      		subi r26,lo8(-(scrollLine))
 488 023a B040      		sbci r27,hi8(-(scrollLine))
 489 023c EC91      		ld r30,X
 490 023e E052      		subi r30,lo8(-(-32))
 491               	.LM66:
 492 0240 8E2F      		mov r24,r30
 493 0242 8695      		lsr r24
 494 0244 C82F      		mov r28,r24
 495 0246 DD27      		clr r29
 496 0248 36E0      		ldi r19,6
 497 024a CC0F      	1:	lsl r28
 498 024c DD1F      		rol r29
 499 024e 3A95      		dec r19
 500 0250 E1F7      		brne 1b
 501 0252 8E2F      		mov r24,r30
 502 0254 9927      		clr r25
 503 0256 8170      		andi r24,lo8(1)
 504 0258 9070      		andi r25,hi8(1)
 505 025a 880F      		lsl r24
 506 025c 991F      		rol r25
 507 025e C82B      		or r28,r24
 508 0260 D92B      		or r29,r25
 509 0262 08C0      		rjmp .L29
 510               	.L27:
 511               	.LM67:
 512 0264 84E0      		ldi r24,lo8(4)
 513 0266 90E0      		ldi r25,hi8(4)
 514 0268 E80E      		add r14,r24
 515 026a F91E      		adc r15,r25
 516               	.LM68:
 517 026c 080F      		add r16,r24
 518 026e 191F      		adc r17,r25
 519               	.LM69:
 520 0270 C80F      		add r28,r24
 521 0272 D91F      		adc r29,r25
 522               	.L29:
 523               	.LM70:
 524 0274 42E0      		ldi r20,lo8(2)
 525 0276 60E0      		ldi r22,lo8(fleds)
 526 0278 70E0      		ldi r23,hi8(fleds)
 527 027a 9F2D      		mov r25,r15
 528 027c 8E2D      		mov r24,r14
 529 027e 00D0      		rcall spieeprom_read
 530               	.LM71:
 531 0280 42E0      		ldi r20,lo8(2)
 532 0282 60E0      		ldi r22,lo8(fleds+2)
 533 0284 70E0      		ldi r23,hi8(fleds+2)
 534 0286 912F      		mov r25,r17
 535 0288 802F      		mov r24,r16
 536 028a 00D0      		rcall spieeprom_read
 537               	.LM72:
 538 028c 42E0      		ldi r20,lo8(2)
 539 028e 60E0      		ldi r22,lo8(fleds+4)
 540 0290 70E0      		ldi r23,hi8(fleds+4)
 541 0292 8C2F      		mov r24,r28
 542 0294 9D2F      		mov r25,r29
 543 0296 00D0      		rcall spieeprom_read
 544               	.LM73:
 545 0298 E0DE      		rcall clock_scroll
 546               	.LM74:
 547               	/* #APP */
 548 029a F894      		cli
 549               	.LM75:
 550               	/* #NOAPP */
 551 029c 8091 0000 		lds r24,clean
 552 02a0 8823      		tst r24
 553 02a2 89F0      		breq .L30
 554               	.LM76:
 555 02a4 F092 0000 		sts (topChar)+1,r15
 556 02a8 E092 0000 		sts topChar,r14
 557               	.LM77:
 558 02ac 1093 0000 		sts (botChar)+1,r17
 559 02b0 0093 0000 		sts botChar,r16
 560               	.LM78:
 561 02b4 C092 0000 		sts charNum,r12
 562               	.LM79:
 563 02b8 D092 0000 		sts pixelNum,r13
 564               	.LM80:
 565 02bc D093 0000 		sts (scrollChar)+1,r29
 566 02c0 C093 0000 		sts scrollChar,r28
 567 02c4 03C0      		rjmp .L31
 568               	.L30:
 569               	.LM81:
 570 02c6 81E0      		ldi r24,lo8(1)
 571 02c8 8093 0000 		sts clean,r24
 572               	.L31:
 573               	.LM82:
 574               	/* #APP */
 575 02cc 7894      		sei
 576               	/* #NOAPP */
 577 02ce 07C0      		rjmp .L25
 578               	.L26:
 579               	.LM83:
 580               	/* #APP */
 581 02d0 F894      		cli
 582               	.LM84:
 583               	/* #NOAPP */
 584 02d2 8EB5      		in r24,78-0x20
 585 02d4 887F      		andi r24,lo8(-8)
 586 02d6 8EBD      		out 78-0x20,r24
 587               	.LM85:
 588               	/* #APP */
 589 02d8 7894      		sei
 590               	.LM86:
 591               	/* #NOAPP */
 592 02da 82E0      		ldi r24,lo8(2)
 593 02dc 1DDF      		rcall set_led
 594               	.L25:
 595               	/* epilogue: frame size=0 */
 596 02de FF91      		pop r31
 597 02e0 EF91      		pop r30
 598 02e2 DF91      		pop r29
 599 02e4 CF91      		pop r28
 600 02e6 BF91      		pop r27
 601 02e8 AF91      		pop r26
 602 02ea 9F91      		pop r25
 603 02ec 8F91      		pop r24
 604 02ee 7F91      		pop r23
 605 02f0 6F91      		pop r22
 606 02f2 5F91      		pop r21
 607 02f4 4F91      		pop r20
 608 02f6 3F91      		pop r19
 609 02f8 2F91      		pop r18
 610 02fa 1F91      		pop r17
 611 02fc 0F91      		pop r16
 612 02fe FF90      		pop r15
 613 0300 EF90      		pop r14
 614 0302 DF90      		pop r13
 615 0304 CF90      		pop r12
 616 0306 0F90      		pop __tmp_reg__
 617 0308 0FBE      		out __SREG__,__tmp_reg__
 618 030a 0F90      		pop __tmp_reg__
 619 030c 1F90      		pop __zero_reg__
 620 030e 1895      		reti
 621               	/* epilogue end (size=25) */
 622               	/* function __vector_4 size 228 (178) */
 623               	.LFE7:
 625               	.global	delay_ms
 627               	delay_ms:
 628               	.LFB11:
 629               	.LM87:
 630               	/* prologue: frame size=0 */
 631               	/* prologue end (size=0) */
 632               	.LM88:
 633 0310 20ED      		ldi r18,lo8(2000)
 634 0312 37E0      		ldi r19,hi8(2000)
 635               	.LM89:
 636               	/* #APP */
 637               		
 638               	L_dl1374:
 639 0314 E22F      		mov r30, r18
 640 0316 F32F      		mov r31, r19
 641               	L_dl2374:
 642 0318 3197      		sbiw r30, 1
 643 031a F1F7      		brne L_dl2374
 644 031c A895      		wdr
 645 031e 8A95      		dec r24
 646 0320 C9F7      		brne L_dl1374
 647               		
 648               	/* #NOAPP */
 649               	/* epilogue: frame size=0 */
 650 0322 0895      		ret
 651               	/* epilogue end (size=1) */
 652               	/* function delay_ms size 25 (24) */
 653               	.LFE11:
 655               	.global	__vector_1
 657               	__vector_1:
 658               	.LFB8:
 659               	.LM90:
 660               	/* prologue: frame size=0 */
 661 0324 1F92      		push __zero_reg__
 662 0326 0F92      		push __tmp_reg__
 663 0328 0FB6      		in __tmp_reg__,__SREG__
 664 032a 0F92      		push __tmp_reg__
 665 032c 1124      		clr __zero_reg__
 666 032e 2F93      		push r18
 667 0330 3F93      		push r19
 668 0332 4F93      		push r20
 669 0334 5F93      		push r21
 670 0336 6F93      		push r22
 671 0338 7F93      		push r23
 672 033a 8F93      		push r24
 673 033c 9F93      		push r25
 674 033e AF93      		push r26
 675 0340 BF93      		push r27
 676 0342 CF93      		push r28
 677 0344 DF93      		push r29
 678 0346 EF93      		push r30
 679 0348 FF93      		push r31
 680               	/* prologue end (size=19) */
 681               	.LM91:
 682 034a C0E0      		ldi r28,lo8(0)
 683 034c D0E0      		ldi r29,hi8(0)
 684               	.LM92:
 685 034e 8299      		sbic 48-0x20,2
 686 0350 05C0      		rjmp .L44
 687               	.L37:
 688               	.LM93:
 689 0352 2196      		adiw r28,1
 690               	.LM94:
 691 0354 81E0      		ldi r24,lo8(1)
 692 0356 DCDF      		rcall delay_ms
 693 0358 829B      		sbis 48-0x20,2
 694 035a FBCF      		rjmp .L37
 695               	.L44:
 696               	.LM95:
 697 035c C536      		cpi r28,101
 698 035e D105      		cpc r29,__zero_reg__
 699 0360 60F0      		brlo .L34
 700               	.LM96:
 701 0362 C45F      		subi r28,lo8(500)
 702 0364 D140      		sbci r29,hi8(500)
 703 0366 18F4      		brsh .L39
 704               	.LM97:
 705 0368 88E0      		ldi r24,lo8(8)
 706 036a 81BD      		out 65-0x20,r24
 707               	.L40:
 708               	.LM98:
 709 036c FFCF      		rjmp .L40
 710               	.L39:
 711               	.LM99:
 712 036e 8FEF      		ldi r24,lo8(-1)
 713 0370 9FEF      		ldi r25,hi8(-1)
 714 0372 9093 0000 		sts (sensor_timer)+1,r25
 715 0376 8093 0000 		sts sensor_timer,r24
 716               	.L34:
 717               	/* epilogue: frame size=0 */
 718 037a FF91      		pop r31
 719 037c EF91      		pop r30
 720 037e DF91      		pop r29
 721 0380 CF91      		pop r28
 722 0382 BF91      		pop r27
 723 0384 AF91      		pop r26
 724 0386 9F91      		pop r25
 725 0388 8F91      		pop r24
 726 038a 7F91      		pop r23
 727 038c 6F91      		pop r22
 728 038e 5F91      		pop r21
 729 0390 4F91      		pop r20
 730 0392 3F91      		pop r19
 731 0394 2F91      		pop r18
 732 0396 0F90      		pop __tmp_reg__
 733 0398 0FBE      		out __SREG__,__tmp_reg__
 734 039a 0F90      		pop __tmp_reg__
 735 039c 1F90      		pop __zero_reg__
 736 039e 1895      		reti
 737               	/* epilogue end (size=19) */
 738               	/* function __vector_1 size 63 (25) */
 739               	.LFE8:
 741               	.global	__vector_2
 743               	__vector_2:
 744               	.LFB9:
 745               	.LM100:
 746               	/* prologue: frame size=0 */
 747 03a0 1F92      		push __zero_reg__
 748 03a2 0F92      		push __tmp_reg__
 749 03a4 0FB6      		in __tmp_reg__,__SREG__
 750 03a6 0F92      		push __tmp_reg__
 751 03a8 1124      		clr __zero_reg__
 752 03aa 0F93      		push r16
 753 03ac 1F93      		push r17
 754 03ae 2F93      		push r18
 755 03b0 3F93      		push r19
 756 03b2 4F93      		push r20
 757 03b4 5F93      		push r21
 758 03b6 6F93      		push r22
 759 03b8 7F93      		push r23
 760 03ba 8F93      		push r24
 761 03bc 9F93      		push r25
 762 03be AF93      		push r26
 763 03c0 BF93      		push r27
 764 03c2 EF93      		push r30
 765 03c4 FF93      		push r31
 766               	/* prologue end (size=19) */
 767               	.LM101:
 768 03c6 8091 0000 		lds r24,hall_debounce
 769 03ca 8530      		cpi r24,lo8(5)
 770 03cc 08F4      		brsh .+2
 771 03ce A5C0      		rjmp .L46
 772               	.LM102:
 773 03d0 1DBC      		out (76)+1-0x20,__zero_reg__
 774 03d2 1CBC      		out 76-0x20,__zero_reg__
 775               	.LM103:
 776 03d4 8091 0000 		lds r24,sensor_timer
 777 03d8 9091 0000 		lds r25,(sensor_timer)+1
 778 03dc 8F3F      		cpi r24,255
 779 03de 9105      		cpc r25,__zero_reg__
 780 03e0 08F0      		brlo .+2
 781 03e2 89C0      		rjmp .L47
 782 03e4 8091 0000 		lds r24,sensor_timer
 783 03e8 9091 0000 		lds r25,(sensor_timer)+1
 784 03ec 0497      		sbiw r24,4
 785 03ee 08F4      		brsh .+2
 786 03f0 82C0      		rjmp .L47
 787               	.LM104:
 788 03f2 8091 0000 		lds r24,sensor_timer
 789 03f6 9091 0000 		lds r25,(sensor_timer)+1
 790 03fa 982F      		mov r25,r24
 791 03fc 8827      		clr r24
 792 03fe 22B7      		in r18,82-0x20
 793 0400 3327      		clr r19
 794 0402 822B      		or r24,r18
 795 0404 932B      		or r25,r19
 796 0406 9BBD      		out (74)+1-0x20,r25
 797 0408 8ABD      		out 74-0x20,r24
 798               	.LM105:
 799 040a 12BE      		out 82-0x20,__zero_reg__
 800               	.LM106:
 801 040c 8091 0000 		lds r24,line_timer_l
 802 0410 8031      		cpi r24,lo8(16)
 803 0412 08F4      		brsh .+2
 804 0414 62C0      		rjmp .L48
 805               	.LM107:
 806 0416 8091 0000 		lds r24,line_timer_l
 807 041a 8051      		subi r24,lo8(-(-16))
 808 041c 8093 0000 		sts line_timer_l,r24
 809               	.LM108:
 810 0420 8091 0000 		lds r24,line_shift
 811 0424 8F5F      		subi r24,lo8(-(1))
 812 0426 8F70      		andi r24,lo8(15)
 813 0428 8093 0000 		sts line_shift,r24
 814               	.LM109:
 815 042c 8091 0000 		lds r24,line_shift
 816 0430 8823      		tst r24
 817 0432 09F0      		breq .+2
 818 0434 52C0      		rjmp .L48

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -