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

📄 usb.lst

📁 avr与PC机之间的通信
💻 LST
📖 第 1 页 / 共 5 页
字号:
 757 02d6 0E94 0000 		call outportb
 758               	.LM133:
 759 02da 8091 0000 		lds r24,bEPPflags
 760 02de 84FD      		sbrc r24,4
 761 02e0 01C0      		rjmp .L49
 762               	.LM134:
 763               	/* #APP */
 764 02e2 7894      		sei
 765               	/* #NOAPP */
 766               	.L49:
 767               	.LM135:
 768 02e4 8F2D      		mov r24,r15
 769 02e6 9927      		clr r25
 770               	/* epilogue: frame size=0 */
 771 02e8 CF91      		pop r28
 772 02ea 1F91      		pop r17
 773 02ec 0F91      		pop r16
 774 02ee FF90      		pop r15
 775 02f0 0895      		ret
 776               	/* epilogue end (size=5) */
 777               	/* function D12_WriteEndpoint size 61 (52) */
 778               	.LFE20:
 780               	.global	D12_WriteEndpointIsr
 782               	D12_WriteEndpointIsr:
 783               	.LFB21:
 784               	.LM136:
 785               	/* prologue: frame size=0 */
 786 02f2 FF92      		push r15
 787 02f4 0F93      		push r16
 788 02f6 1F93      		push r17
 789 02f8 CF93      		push r28
 790               	/* prologue end (size=4) */
 791 02fa 982F      		mov r25,r24
 792 02fc F62E      		mov r15,r22
 793 02fe 8A01      		movw r16,r20
 794               	.LM137:
 795 0300 8091 0000 		lds r24,bEPPflags
 796 0304 84FD      		sbrc r24,4
 797 0306 01C0      		rjmp .L53
 798               	.LM138:
 799               	/* #APP */
 800 0308 F894      		cli
 801               	/* #NOAPP */
 802               	.L53:
 803               	.LM139:
 804 030a 692F      		mov r22,r25
 805 030c 83E0      		ldi r24,lo8(3)
 806 030e 0E94 0000 		call outportb
 807               	.LM140:
 808 0312 82E0      		ldi r24,lo8(2)
 809 0314 0E94 0000 		call inportb
 810               	.LM141:
 811 0318 60EF      		ldi r22,lo8(-16)
 812 031a 83E0      		ldi r24,lo8(3)
 813 031c 0E94 0000 		call outportb
 814               	.LM142:
 815 0320 60E0      		ldi r22,lo8(0)
 816 0322 82E0      		ldi r24,lo8(2)
 817 0324 0E94 0000 		call outportb
 818               	.LM143:
 819 0328 6F2D      		mov r22,r15
 820 032a 82E0      		ldi r24,lo8(2)
 821 032c 0E94 0000 		call outportb
 822               	.LM144:
 823 0330 FF20      		tst r15
 824 0332 49F0      		breq .L60
 825 0334 CF2D      		mov r28,r15
 826               	.L57:
 827               	.LM145:
 828 0336 F801      		movw r30,r16
 829 0338 6191      		ld r22,Z+
 830 033a 8F01      		movw r16,r30
 831 033c 82E0      		ldi r24,lo8(2)
 832 033e 0E94 0000 		call outportb
 833               	.LM146:
 834 0342 C150      		subi r28,lo8(-(-1))
 835 0344 C1F7      		brne .L57
 836               	.L60:
 837               	.LM147:
 838 0346 6AEF      		ldi r22,lo8(-6)
 839 0348 83E0      		ldi r24,lo8(3)
 840 034a 0E94 0000 		call outportb
 841               	.LM148:
 842 034e 8091 0000 		lds r24,bEPPflags
 843 0352 84FD      		sbrc r24,4
 844 0354 01C0      		rjmp .L58
 845               	.LM149:
 846               	/* #APP */
 847 0356 7894      		sei
 848               	/* #NOAPP */
 849               	.L58:
 850               	.LM150:
 851 0358 8F2D      		mov r24,r15
 852 035a 9927      		clr r25
 853               	/* epilogue: frame size=0 */
 854 035c CF91      		pop r28
 855 035e 1F91      		pop r17
 856 0360 0F91      		pop r16
 857 0362 FF90      		pop r15
 858 0364 0895      		ret
 859               	/* epilogue end (size=5) */
 860               	/* function D12_WriteEndpointIsr size 61 (52) */
 861               	.LFE21:
 863               	.global	D12_AcknowledgeEndpoint
 865               	D12_AcknowledgeEndpoint:
 866               	.LFB22:
 867               	.LM151:
 868               	/* prologue: frame size=0 */
 869 0366 1F93      		push r17
 870               	/* prologue end (size=1) */
 871 0368 182F      		mov r17,r24
 872               	.LM152:
 873 036a 682F      		mov r22,r24
 874 036c 83E0      		ldi r24,lo8(3)
 875 036e 0E94 0000 		call outportb
 876               	.LM153:
 877 0372 61EF      		ldi r22,lo8(-15)
 878 0374 83E0      		ldi r24,lo8(3)
 879 0376 0E94 0000 		call outportb
 880               	.LM154:
 881 037a 1123      		tst r17
 882 037c 21F4      		brne .L61
 883               	.LM155:
 884 037e 62EF      		ldi r22,lo8(-14)
 885 0380 83E0      		ldi r24,lo8(3)
 886 0382 0E94 0000 		call outportb
 887               	.L61:
 888               	/* epilogue: frame size=0 */
 889 0386 1F91      		pop r17
 890 0388 0895      		ret
 891               	/* epilogue end (size=2) */
 892               	/* function D12_AcknowledgeEndpoint size 18 (15) */
 893               	.LFE22:
 895               	.global	stall_ep0
 897               	stall_ep0:
 898               	.LFB23:
 899               	.LM156:
 900               	/* prologue: frame size=0 */
 901               	/* prologue end (size=0) */
 902               	.LM157:
 903 038a 61E0      		ldi r22,lo8(1)
 904 038c 80E0      		ldi r24,lo8(0)
 905 038e 0E94 0000 		call D12_SetEndpointStatus
 906               	.LM158:
 907 0392 61E0      		ldi r22,lo8(1)
 908 0394 862F      		mov r24,r22
 909 0396 0E94 0000 		call D12_SetEndpointStatus
 910               	/* epilogue: frame size=0 */
 911 039a 0895      		ret
 912               	/* epilogue end (size=1) */
 913               	/* function stall_ep0 size 9 (8) */
 914               	.LFE23:
 916               	.global	single_transmit
 918               	single_transmit:
 919               	.LFB24:
 920               	.LM159:
 921               	/* prologue: frame size=0 */
 922               	/* prologue end (size=0) */
 923 039c AC01      		movw r20,r24
 924               	.LM160:
 925 039e 6131      		cpi r22,lo8(17)
 926 03a0 18F4      		brsh .L64
 927               	.LM161:
 928 03a2 81E0      		ldi r24,lo8(1)
 929 03a4 0E94 0000 		call D12_WriteEndpoint
 930               	.L64:
 931 03a8 0895      		ret
 932               	/* epilogue: frame size=0 */
 933 03aa 0895      		ret
 934               	/* epilogue end (size=1) */
 935               	/* function single_transmit size 8 (7) */
 936               	.LFE24:
 938               	.global	reserved
 940               	reserved:
 941               	.LFB25:
 942               	.LM162:
 943               	/* prologue: frame size=0 */
 944               	/* prologue end (size=0) */
 945               	.LM163:
 946 03ac 0E94 0000 		call stall_ep0
 947               	/* epilogue: frame size=0 */
 948 03b0 0895      		ret
 949               	/* epilogue end (size=1) */
 950               	/* function reserved size 3 (2) */
 951               	.LFE25:
 953               	.global	init_unconfig
 955               	init_unconfig:
 956               	.LFB26:
 957               	.LM164:
 958               	/* prologue: frame size=0 */
 959               	/* prologue end (size=0) */
 960               	.LM165:
 961 03b2 80E0      		ldi r24,lo8(0)
 962 03b4 0E94 0000 		call D12_SetEndpointEnable
 963               	/* epilogue: frame size=0 */
 964 03b8 0895      		ret
 965               	/* epilogue end (size=1) */
 966               	/* function init_unconfig size 4 (3) */
 967               	.LFE26:
 969               	.global	init_config
 971               	init_config:
 972               	.LFB27:
 973               	.LM166:
 974               	/* prologue: frame size=0 */
 975               	/* prologue end (size=0) */
 976               	.LM167:
 977 03ba 81E0      		ldi r24,lo8(1)
 978 03bc 0E94 0000 		call D12_SetEndpointEnable
 979               	/* epilogue: frame size=0 */
 980 03c0 0895      		ret
 981               	/* epilogue end (size=1) */
 982               	/* function init_config size 4 (3) */
 983               	.LFE27:
 985               	.global	get_status
 987               	get_status:
 988               	.LFB28:
 989               	.LM168:
 990               	/* prologue: frame size=2 */
 991 03c2 CF93      		push r28
 992 03c4 DF93      		push r29
 993 03c6 CDB7      		in r28,__SP_L__
 994 03c8 DEB7      		in r29,__SP_H__
 995 03ca 2297      		sbiw r28,2
 996 03cc 0FB6      		in __tmp_reg__,__SREG__
 997 03ce F894      		cli
 998 03d0 DEBF      		out __SP_H__,r29
 999 03d2 0FBE      		out __SREG__,__tmp_reg__
 1000 03d4 CDBF      		out __SP_L__,r28
 1001               	/* prologue end (size=10) */
 1002               	.LM169:
 1003 03d6 8091 0000 		lds r24,ControlData
 1004 03da 8F71      		andi r24,lo8(31)
 1005               	.LM170:
 1006 03dc 49F4      		brne .L70
 1007               	.LM171:
 1008 03de 8091 0000 		lds r24,bEPPflags
 1009 03e2 83FF      		sbrs r24,3
 1010 03e4 02C0      		rjmp .L71
 1011               	.LM172:
 1012 03e6 83E0      		ldi r24,lo8(3)
 1013 03e8 01C0      		rjmp .L82
 1014               	.L71:
 1015               	.LM173:
 1016 03ea 81E0      		ldi r24,lo8(1)
 1017               	.L82:
 1018 03ec 8983      		std Y+1,r24
 1019 03ee 18C0      		rjmp .L80
 1020               	.L70:
 1021               	.LM174:
 1022 03f0 8130      		cpi r24,lo8(1)
 1023 03f2 A9F0      		breq .L79
 1024               	.LM175:
 1025 03f4 8230      		cpi r24,lo8(2)
 1026 03f6 E1F4      		brne .L76
 1027               	.LM176:
 1028 03f8 8091 0000 		lds r24,ControlData+4
 1029 03fc 8370      		andi r24,lo8(3)
 1030               	.LM177:
 1031 03fe 2091 0000 		lds r18,ControlData+4
 1032 0402 3091 0000 		lds r19,(ControlData+4)+1
 1033 0406 9927      		clr r25
 1034 0408 27FF      		sbrs r18,7
 1035 040a 04C0      		rjmp .L77
 1036               	.LM178:
 1037 040c 880F      		add r24,r24
 1038 040e 991F      		adc r25,r25
 1039 0410 8F5F      		subi r24,lo8(-(1))
 1040 0412 01C0      		rjmp .L83
 1041               	.L77:
 1042               	.LM179:
 1043 0414 880F      		lsl r24
 1044               	.L83:
 1045 0416 0E94 0000 		call D12_SelectEndpoint
 1046               	.LM180:
 1047 041a 81FD      		sbrc r24,1
 1048 041c E6CF      		rjmp .L71
 1049               	.L79:
 1050               	.LM181:
 1051 041e 1982      		std Y+1,__zero_reg__
 1052               	.L80:
 1053               	.LM182:
 1054 0420 FE01      		movw r30,r28
 1055 0422 3196      		adiw r30,1
 1056 0424 1182      		std Z+1,__zero_reg__
 1057               	.LM183:
 1058 0426 62E0      		ldi r22,lo8(2)
 1059 0428 CF01      		movw r24,r30
 1060 042a 0E94 0000 		call single_transmit
 1061 042e 02C0      		rjmp .L69
 1062               	.L76:
 1063               	.LM184:
 1064 0430 0E94 0000 		call stall_ep0
 1065               	.L69:
 1066               	/* epilogue: frame size=2 */
 1067 0434 2296      		adiw r28,2
 1068 0436 0FB6      		in __tmp_reg__,__SREG__
 1069 0438 F894      		cli
 1070 043a DEBF      		out __SP_H__,r29
 1071 043c 0FBE      		out __SREG__,__tmp_reg__
 1072 043e CDBF      		out __SP_L__,r28
 1073 0440 DF91      		pop r29
 1074 0442 CF91      		pop r28
 1075 0444 0895      		ret
 1076               	/* epilogue end (size=9) */
 1077               	/* function get_status size 67 (48) */
 1078               	.LFE28:
 1080               	.global	clear_feature
 1082               	clear_feature:
 1083               	.LFB29:
 1084               	.LM185:
 1085               	/* prologue: frame size=0 */
 1086               	/* prologue end (size=0) */
 1087               	.LM186:
 1088 0446 8091 0000 		lds r24,ControlData
 1089 044a 8F71      		andi r24,lo8(31)
 1090               	.LM187:
 1091 044c 71F4      		brne .L85
 1092               	.LM188:
 1093 044e 8091 0000 		lds r24,ControlData+2
 1094 0452 9091 0000 		lds r25,(ControlData+2)+1
 1095 0456 0197      		sbiw r24,1
 1096 0458 49F5      		brne .L87
 1097               	.LM189:
 1098               	/* #APP */
 1099 045a F894      		cli
 1100               	.LM190:
 1101               	/* #NOAPP */
 1102 045c 8091 0000 		lds r24,bEPPflags
 1103 0460 877F      		andi r24,lo8(-9)
 1104 0462 8093 0000 		sts bEPPflags,r24
 1105               	.LM191:
 1106               	/* #APP */
 1107 0466 7894      		sei
 1108               	/* #NOAPP */
 1109 0468 1BC0      		rjmp .L92
 1110               	.L85:
 1111               	.LM192:
 1112 046a 8230      		cpi r24,lo8(2)
 1113 046c F9F4      		brne .L87
 1114 046e 8091 0000 		lds r24,ControlData+2
 1115 0472 9091 0000 		lds r25,(ControlData+2)+1
 1116 0476 892B      		or r24,r25
 1117 0478 C9F4      		brne .L87
 1118               	.LM193:
 1119 047a 8091 0000 		lds r24,ControlData+4
 1120 047e 8370      		andi r24,lo8(3)
 1121               	.LM194:
 1122 0480 2091 0000 		lds r18,ControlData+4
 1123 0484 3091 0000 		lds r19,(ControlData+4)+1
 1124 0488 9927      		clr r25
 1125 048a 27FF      		sbrs r18,7
 1126 048c 05C0      		rjmp .L88
 1127               	.LM195:
 1128 048e 880F      		add r24,r24
 1129 0490 991F      		adc r25,r25
 1130 0492 60E0      		ldi r22,lo8(0)
 1131 0494 8F5F      		subi r24,lo8(-(1))
 1132 0496 02C0      		rjmp .L91

⌨️ 快捷键说明

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