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

📄 main.lst

📁 详细讲解PS/2键盘通信接口及协议
💻 LST
📖 第 1 页 / 共 3 页
字号:
 687 0168 812F      		mov r24,r17
 688 016a 0E94 0000 		call ccbi
 689               	.LM73:
 690 016e 82E0      		ldi r24,lo8(2)
 691 0170 0E94 0000 		call ssbi
 692               	.LM74:
 693 0174 81E0      		ldi r24,lo8(1)
 694 0176 81BB      		out 49-0x20,r24
 695 0178 97E0      		ldi r25,lo8(7)
 696               	.L86:
 697               	.LM75:
 698 017a 8299      		sbic 48-0x20,2
 699 017c FECF      		rjmp .L86
 700               	.LM76:
 701 017e 8C2F      		mov r24,r28
 702 0180 8170      		andi r24,lo8(1)
 703 0182 8460      		ori r24,lo8(4)
 704 0184 82BB      		out 50-0x20,r24
 705               	.LM77:
 706 0186 9099      		sbic 50-0x20,0
 707 0188 1F5F      		subi r17,lo8(-(1))
 708               	.L61:
 709               	.LM78:
 710 018a C695      		lsr r28
 711               	.LM79:
 712 018c 9150      		subi r25,lo8(-(-1))
 713 018e 97FF      		sbrs r25,7
 714 0190 F4CF      		rjmp .L86
 715               	.L63:
 716               	.LM80:
 717 0192 8299      		sbic 48-0x20,2
 718 0194 FECF      		rjmp .L63
 719               	.LM81:
 720 0196 812F      		mov r24,r17
 721 0198 9927      		clr r25
 722 019a 8430      		cpi r24,4
 723 019c 9105      		cpc r25,__zero_reg__
 724 019e E9F0      		breq .L71
 725 01a0 8530      		cpi r24,5
 726 01a2 9105      		cpc r25,__zero_reg__
 727 01a4 7CF4      		brge .L76
 728 01a6 8130      		cpi r24,1
 729 01a8 9105      		cpc r25,__zero_reg__
 730 01aa C9F0      		breq .L75
 731 01ac 8230      		cpi r24,2
 732 01ae 9105      		cpc r25,__zero_reg__
 733 01b0 1CF4      		brge .L77
 734 01b2 892B      		or r24,r25
 735 01b4 91F0      		breq .L71
 736 01b6 15C0      		rjmp .L78
 737               	.L77:
 738 01b8 8230      		cpi r24,2
 739 01ba 9105      		cpc r25,__zero_reg__
 740 01bc 71F0      		breq .L71
 741 01be 0397      		sbiw r24,3
 742 01c0 71F0      		breq .L75
 743 01c2 0FC0      		rjmp .L78
 744               	.L76:
 745 01c4 8630      		cpi r24,6
 746 01c6 9105      		cpc r25,__zero_reg__
 747 01c8 41F0      		breq .L71
 748 01ca 8630      		cpi r24,6
 749 01cc 9105      		cpc r25,__zero_reg__
 750 01ce 3CF0      		brlt .L75
 751 01d0 8730      		cpi r24,7
 752 01d2 9105      		cpc r25,__zero_reg__
 753 01d4 21F0      		breq .L75
 754 01d6 0897      		sbiw r24,8
 755 01d8 21F4      		brne .L78
 756               	.L71:
 757               	.LM82:
 758 01da 85E0      		ldi r24,lo8(5)
 759 01dc 01C0      		rjmp .L85
 760               	.L75:
 761               	.LM83:
 762 01de 84E0      		ldi r24,lo8(4)
 763               	.L85:
 764 01e0 82BB      		out 50-0x20,r24
 765               	.L78:
 766               	.LM84:
 767 01e2 8299      		sbic 48-0x20,2
 768 01e4 FECF      		rjmp .L78
 769               	.LM85:
 770 01e6 85E0      		ldi r24,lo8(5)
 771 01e8 82BB      		out 50-0x20,r24
 772               	/* epilogue: frame size=0 */
 773 01ea CF91      		pop r28
 774 01ec 1F91      		pop r17
 775 01ee 0895      		ret
 776               	/* epilogue end (size=3) */
 777               	/* function KB_Write size 85 (80) */
 778               	.LFE19:
 780               	.global	__vector_1
 782               	__vector_1:
 783               	.LFB20:
 784               	.LM86:
 785               	/* prologue: frame size=0 */
 786 01f0 1F92      		push __zero_reg__
 787 01f2 0F92      		push __tmp_reg__
 788 01f4 0FB6      		in __tmp_reg__,__SREG__
 789 01f6 0F92      		push __tmp_reg__
 790 01f8 1124      		clr __zero_reg__
 791 01fa 2F93      		push r18
 792 01fc 3F93      		push r19
 793 01fe 8F93      		push r24
 794 0200 9F93      		push r25
 795 0202 EF93      		push r30
 796 0204 FF93      		push r31
 797               	/* prologue end (size=11) */
 798               	.LM87:
 799 0206 8091 0000 		lds r24,cnt
 800 020a 8823      		tst r24
 801 020c 11F4      		brne .L88
 802               	.LM88:
 803 020e 8093 0000 		sts key,r24
 804               	.L88:
 805               	.LM89:
 806 0212 11BA      		out 49-0x20,__zero_reg__
 807               	.LM90:
 808 0214 12BA      		out 50-0x20,__zero_reg__
 809               	.LM91:
 810 0216 8091 0000 		lds r24,cnt
 811 021a 8823      		tst r24
 812 021c B1F0      		breq .L89
 813 021e 8091 0000 		lds r24,cnt
 814 0222 8930      		cpi r24,lo8(9)
 815 0224 90F4      		brsh .L89
 816               	.LM92:
 817 0226 80B3      		in r24,48-0x20
 818 0228 8170      		andi r24,lo8(1)
 819               	.LM93:
 820 022a 282F      		mov r18,r24
 821 022c 3327      		clr r19
 822 022e 8091 0000 		lds r24,cnt
 823 0232 9927      		clr r25
 824 0234 0197      		sbiw r24,1
 825 0236 02C0      		rjmp 2f
 826 0238 220F      	1:	lsl r18
 827 023a 331F      		rol r19
 828 023c 8A95      	2:	dec r24
 829 023e E2F7      		brpl 1b
 830               	.LM94:
 831 0240 8091 0000 		lds r24,key
 832 0244 822B      		or r24,r18
 833 0246 8093 0000 		sts key,r24
 834               	.L89:
 835               	.LM95:
 836 024a 80B3      		in r24,48-0x20
 837               	.LM96:
 838 024c 8091 0000 		lds r24,cnt
 839 0250 8F5F      		subi r24,lo8(-(1))
 840 0252 8093 0000 		sts cnt,r24
 841               	.LM97:
 842 0256 8091 0000 		lds r24,cnt
 843 025a 8B30      		cpi r24,lo8(11)
 844 025c 91F5      		brne .L87
 845               	.LM98:
 846 025e 1092 0000 		sts cnt,__zero_reg__
 847               	.LM99:
 848 0262 8091 0000 		lds r24,shift
 849 0266 8130      		cpi r24,lo8(1)
 850 0268 91F4      		brne .L91
 851 026a 2AE3      		ldi r18,lo8(58)
 852 026c E0E0      		ldi r30,lo8(Shifted)
 853 026e F0E0      		ldi r31,hi8(Shifted)
 854               	.L96:
 855               	.LM100:
 856 0270 9091 0000 		lds r25,key
 857 0274 8081      		ld r24,Z
 858 0276 9817      		cp r25,r24
 859 0278 19F4      		brne .L94
 860               	.LM101:
 861 027a 8181      		ldd r24,Z+1
 862 027c 8093 0000 		sts keyword,r24
 863               	.L94:
 864               	.LM102:
 865 0280 2150      		subi r18,lo8(-(-1))
 866 0282 3296      		adiw r30,2
 867 0284 27FF      		sbrs r18,7
 868 0286 F4CF      		rjmp .L96
 869               	.LM103:
 870 0288 1092 0000 		sts shift,__zero_reg__
 871 028c 0FC0      		rjmp .L97
 872               	.L91:
 873 028e 2AE3      		ldi r18,lo8(58)
 874 0290 E0E0      		ldi r30,lo8(UnShifted)
 875 0292 F0E0      		ldi r31,hi8(UnShifted)
 876               	.L102:
 877               	.LM104:
 878 0294 9091 0000 		lds r25,key
 879 0298 8081      		ld r24,Z
 880 029a 9817      		cp r25,r24
 881 029c 19F4      		brne .L100
 882               	.LM105:
 883 029e 8181      		ldd r24,Z+1
 884 02a0 8093 0000 		sts keyword,r24
 885               	.L100:
 886               	.LM106:
 887 02a4 2150      		subi r18,lo8(-(-1))
 888 02a6 3296      		adiw r30,2
 889 02a8 27FF      		sbrs r18,7
 890 02aa F4CF      		rjmp .L102
 891               	.L97:
 892               	.LM107:
 893 02ac 8091 0000 		lds r24,key
 894 02b0 8231      		cpi r24,lo8(18)
 895 02b2 21F0      		breq .L104
 896 02b4 8091 0000 		lds r24,key
 897 02b8 8935      		cpi r24,lo8(89)
 898 02ba 19F4      		brne .L87
 899               	.L104:
 900               	.LM108:
 901 02bc 81E0      		ldi r24,lo8(1)
 902 02be 8093 0000 		sts shift,r24
 903               	.L87:
 904               	/* epilogue: frame size=0 */
 905 02c2 FF91      		pop r31
 906 02c4 EF91      		pop r30
 907 02c6 9F91      		pop r25
 908 02c8 8F91      		pop r24
 909 02ca 3F91      		pop r19
 910 02cc 2F91      		pop r18
 911 02ce 0F90      		pop __tmp_reg__
 912 02d0 0FBE      		out __SREG__,__tmp_reg__
 913 02d2 0F90      		pop __tmp_reg__
 914 02d4 1F90      		pop __zero_reg__
 915 02d6 1895      		reti
 916               	/* epilogue end (size=11) */
 917               	/* function __vector_1 size 117 (95) */
 918               	.LFE20:
 920               	.global	main
 922               	main:
 923               	.LFB21:
 924               	.LM109:
 925               	/* prologue: frame size=0 */
 926 02d8 C0E0      		ldi r28,lo8(__stack - 0)
 927 02da D0E0      		ldi r29,hi8(__stack - 0)
 928 02dc DEBF      		out __SP_H__,r29
 929 02de CDBF      		out __SP_L__,r28
 930               	/* prologue end (size=4) */
 931               	.LM110:
 932 02e0 8FEF      		ldi r24,lo8(-1)
 933 02e2 8ABB      		out 58-0x20,r24
 934               	.LM111:
 935 02e4 87BB      		out 55-0x20,r24
 936               	.LM112:
 937 02e6 85E0      		ldi r24,lo8(5)
 938 02e8 82BB      		out 50-0x20,r24
 939               	.LM113:
 940 02ea 11BA      		out 49-0x20,__zero_reg__
 941               	.LM114:
 942 02ec 82E0      		ldi r24,lo8(2)
 943 02ee 85BF      		out 85-0x20,r24
 944               	.LM115:
 945 02f0 80E4      		ldi r24,lo8(64)
 946 02f2 8BBF      		out 91-0x20,r24
 947               	.LM116:
 948               	/* #APP */
 949 02f4 7894      		sei
 950               	.LM117:
 951               	/* #NOAPP */
 952 02f6 0E94 0000 		call Initialize_LCD
 953               	.L115:
 954               	.LM118:
 955 02fa 8091 0000 		lds r24,key
 956 02fe 8823      		tst r24
 957 0300 E1F3      		breq .L115
 958               	.LM119:
 959 0302 4091 0000 		lds r20,key
 960 0306 60E0      		ldi r22,lo8(0)
 961 0308 862F      		mov r24,r22
 962 030a 0E94 0000 		call Write_Word
 963               	.LM120:
 964 030e F5CF      		rjmp .L115
 965               	/* epilogue: frame size=0 */
 966               	/* epilogue: noreturn */
 967               	/* epilogue end (size=0) */
 968               	/* function main size 29 (25) */
 969               	.LFE21:
 971               		.comm cnt,1,1
 972               		.comm keybf,6,1
 973               	.Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 main.c
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:3      *ABS*:0000003f __SREG__
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:4      *ABS*:0000003e __SP_H__
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:5      *ABS*:0000003d __SP_L__
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:23     .bss:00000000 keyword
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:29     .bss:00000001 key
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:35     .bss:00000002 shift
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:41     .bss:00000003 bf
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:47     .data:00000000 Shifted
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:169    .data:00000076 UnShifted
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:291    .text:00000000 sbbi
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:315    .text:00000016 cbbi
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:346    .text:0000002c Delay
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:368    .text:00000036 En_Toggle
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:395    .text:00000054 Wait_Until_Ready
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:432    .text:0000007e Write_Command
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:463    .text:000000a0 Write_Data
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:494    .text:000000c2 Write_Position
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:521    .text:000000d6 Write_String
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:552    .text:000000f4 Initialize_LCD
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:580    .text:00000112 Write_Word
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:601    .text:00000124 ssbi
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:625    .text:0000013a ccbi
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:656    .text:00000150 KB_Write
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:782    .text:000001f0 __vector_1
                            *COM*:00000001 cnt
C:\DOCUME~1\王海江\LOCALS~1\Temp/ccacbaaa.s:922    .text:000002d8 main
                            *COM*:00000006 keybf

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack

⌨️ 快捷键说明

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