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

📄 d12_int.lst

📁 基於MCU c51/8051 讀寫SD/MMC card 再以USB 傳回電腦的範例程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
   1               		.file	"D12_Int.c"
   2               		.arch atmega128
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  17               	.Ltext0:
  18               	.global	USB_Delay
  20               	USB_Delay:
  21               	.LFB5:
  22               	.LM1:
  23               	/* prologue: frame size=0 */
  24               	/* prologue end (size=0) */
  25               	.LVL0:
  26 0000 00C0      		rjmp .L2
  27               	.L3:
  28               	.LM2:
  29               	/* #APP */
  30 0002 0000      		nop
  31               	/* #NOAPP */
  32               	.L2:
  33 0004 0197      		sbiw r24,1
  34 0006 2FEF      		ldi r18,hi8(-1)
  35 0008 8F3F      		cpi r24,lo8(-1)
  36 000a 9207      		cpc r25,r18
  37 000c 01F4      		brne .L3
  38               	/* epilogue: frame size=0 */
  39 000e 0895      		ret
  40               	/* epilogue end (size=1) */
  41               	/* function USB_Delay size 9 (8) */
  42               	.LFE5:
  44               	.global	D12SuspChgProc
  46               	D12SuspChgProc:
  47               	.LFB14:
  48               	.LM3:
  49               	/* prologue: frame size=0 */
  50               	/* prologue end (size=0) */
  51               	/* epilogue: frame size=0 */
  52 0010 0895      		ret
  53               	/* epilogue end (size=1) */
  54               	/* function D12SuspChgProc size 1 (0) */
  55               	.LFE14:
  57               	.global	D12BusRstProc
  59               	D12BusRstProc:
  60               	.LFB13:
  61               	.LM4:
  62               	/* prologue: frame size=0 */
  63               	/* prologue end (size=0) */
  64               	.LM5:
  65 0012 0E94 0000 		call D12_Clear_Buffer
  66               	.LM6:
  67 0016 0E94 0000 		call D12_Enable_Buffer
  68               	.LM7:
  69 001a 81E0      		ldi r24,lo8(1)
  70 001c 0E94 0000 		call D12_Set_Endpoint_Enable
  71               	/* epilogue: frame size=0 */
  72 0020 0895      		ret
  73               	/* epilogue end (size=1) */
  74               	/* function D12BusRstProc size 8 (7) */
  75               	.LFE13:
  77               	.global	D12Ep5IntProc
  79               	D12Ep5IntProc:
  80               	.LFB12:
  81               	.LM8:
  82               	/* prologue: frame size=0 */
  83               	/* prologue end (size=0) */
  84               	.LM9:
  85 0022 85E0      		ldi r24,lo8(5)
  86 0024 0E94 0000 		call D12_Read_Last_Transaction_Status
  87               	/* epilogue: frame size=0 */
  88 0028 0895      		ret
  89               	/* epilogue end (size=1) */
  90               	/* function D12Ep5IntProc size 4 (3) */
  91               	.LFE12:
  93               	.global	D12Ep3IntProc
  95               	D12Ep3IntProc:
  96               	.LFB10:
  97               	.LM10:
  98               	/* prologue: frame size=0 */
  99               	/* prologue end (size=0) */
 100               	.LM11:
 101 002a 61E0      		ldi r22,lo8(1)
 102 002c 83E0      		ldi r24,lo8(3)
 103 002e 0E94 0000 		call D12_Set_Endpoint_Status
 104               	/* epilogue: frame size=0 */
 105 0032 0895      		ret
 106               	/* epilogue end (size=1) */
 107               	/* function D12Ep3IntProc size 5 (4) */
 108               	.LFE10:
 110               	.global	D12Ep2IntProc
 112               	D12Ep2IntProc:
 113               	.LFB9:
 114               	.LM12:
 115               	/* prologue: frame size=0 */
 116               	/* prologue end (size=0) */
 117               	.LM13:
 118 0034 61E0      		ldi r22,lo8(1)
 119 0036 82E0      		ldi r24,lo8(2)
 120 0038 0E94 0000 		call D12_Set_Endpoint_Status
 121               	/* epilogue: frame size=0 */
 122 003c 0895      		ret
 123               	/* epilogue end (size=1) */
 124               	/* function D12Ep2IntProc size 5 (4) */
 125               	.LFE9:
 127               	.global	D12Ep1IntProc
 129               	D12Ep1IntProc:
 130               	.LFB8:
 131               	.LM14:
 132               	/* prologue: frame size=0 */
 133               	/* prologue end (size=0) */
 134               	.LM15:
 135 003e 81E0      		ldi r24,lo8(1)
 136 0040 0E94 0000 		call D12_Read_Last_Transaction_Status
 137               	.LM16:
 138 0044 0E94 0000 		call Remain_Descriptor_Flag
 139 0048 8823      		tst r24
 140 004a 01F0      		breq .L19
 141               	.LM17:
 142 004c 0E94 0000 		call Send_Descriptor
 143               	.L19:
 144 0050 0895      		ret
 145               	/* epilogue: frame size=0 */
 146               	/* epilogue: noreturn */
 147               	/* epilogue end (size=0) */
 148               	/* function D12Ep1IntProc size 10 (10) */
 149               	.LFE8:
 151               	.global	D12Ep0IntProc
 153               	D12Ep0IntProc:
 154               	.LFB7:
 155               	.LM18:
 156               	/* prologue: frame size=9 */
 157 0052 CF93      		push r28
 158 0054 DF93      		push r29
 159 0056 CDB7      		in r28,__SP_L__
 160 0058 DEB7      		in r29,__SP_H__
 161 005a 2997      		sbiw r28,9
 162 005c 0FB6      		in __tmp_reg__,__SREG__
 163 005e F894      		cli
 164 0060 DEBF      		out __SP_H__,r29
 165 0062 0FBE      		out __SREG__,__tmp_reg__
 166 0064 CDBF      		out __SP_L__,r28
 167               	/* prologue end (size=10) */
 168               	.LM19:
 169 0066 1982      		std Y+1,__zero_reg__
 170               	.LVL1:
 171               	.LM20:
 172 0068 0E94 0000 		call Clear_Remain_Descriptor_Flag
 173               	.LM21:
 174 006c 80E0      		ldi r24,lo8(0)
 175 006e 0E94 0000 		call D12_Read_Last_Transaction_Status
 176 0072 85FF      		sbrs r24,5
 177 0074 00C0      		rjmp .L21
 178               	.LM22:
 179 0076 48E0      		ldi r20,lo8(8)
 180 0078 BE01      		movw r22,r28
 181 007a 6E5F      		subi r22,lo8(-(2))
 182 007c 7F4F      		sbci r23,hi8(-(2))
 183 007e 80E0      		ldi r24,lo8(0)
 184 0080 0E94 0000 		call D12_Read_Endpoint
 185 0084 8830      		cpi r24,lo8(8)
 186 0086 01F4      		brne .L21
 187               	.LM23:
 188 0088 80E0      		ldi r24,lo8(0)
 189 008a 0E94 0000 		call D12_Ack_Endpoint
 190               	.LM24:
 191 008e 81E0      		ldi r24,lo8(1)
 192 0090 0E94 0000 		call D12_Ack_Endpoint
 193               	.LM25:
 194 0094 8A81      		ldd r24,Y+2
 195 0096 813A      		cpi r24,lo8(-95)
 196 0098 01F4      		brne .L24
 197 009a 8B81      		ldd r24,Y+3
 198 009c 8E3F      		cpi r24,lo8(-2)
 199 009e 01F4      		brne .L24
 200               	.LM26:
 201 00a0 41E0      		ldi r20,lo8(1)
 202 00a2 BE01      		movw r22,r28
 203 00a4 6F5F      		subi r22,lo8(-(1))
 204 00a6 7F4F      		sbci r23,hi8(-(1))
 205 00a8 81E0      		ldi r24,lo8(1)
 206 00aa 0E94 0000 		call D12_Write_Endpoint
 207               	.L24:
 208               	.LM27:
 209 00ae EB81      		ldd r30,Y+3
 210 00b0 FF27      		clr r31
 211 00b2 EF70      		andi r30,lo8(15)
 212 00b4 F070      		andi r31,hi8(15)
 213 00b6 EE0F      		lsl r30
 214 00b8 FF1F      		rol r31
 215 00ba E050      		subi r30,lo8(-(Stand_Device_Request))
 216 00bc F040      		sbci r31,hi8(-(Stand_Device_Request))
 217 00be 0190      		ld __tmp_reg__,Z+
 218 00c0 F081      		ld r31,Z
 219 00c2 E02D      		mov r30,__tmp_reg__
 220 00c4 CE01      		movw r24,r28
 221 00c6 0296      		adiw r24,2
 222 00c8 0995      		icall
 223 00ca 00C0      		rjmp .L28
 224               	.L21:
 225               	.LM28:
 226 00cc 61E0      		ldi r22,lo8(1)
 227 00ce 80E0      		ldi r24,lo8(0)
 228 00d0 0E94 0000 		call D12_Set_Endpoint_Status
 229               	.LM29:
 230 00d4 61E0      		ldi r22,lo8(1)
 231 00d6 81E0      		ldi r24,lo8(1)
 232 00d8 0E94 0000 		call D12_Set_Endpoint_Status
 233               	.L28:
 234               	/* epilogue: frame size=9 */
 235 00dc 2996      		adiw r28,9
 236 00de 0FB6      		in __tmp_reg__,__SREG__
 237 00e0 F894      		cli
 238 00e2 DEBF      		out __SP_H__,r29
 239 00e4 0FBE      		out __SREG__,__tmp_reg__
 240 00e6 CDBF      		out __SP_L__,r28
 241 00e8 DF91      		pop r29
 242 00ea CF91      		pop r28
 243 00ec 0895      		ret
 244               	/* epilogue end (size=9) */
 245               	/* function D12Ep0IntProc size 78 (59) */
 246               	.LFE7:
 248               	.global	write_10
 250               	write_10:
 251               	.LFB4:
 252               	.LM30:
 253               	/* prologue: frame size=512 */
 254 00ee 4F92      		push r4
 255 00f0 5F92      		push r5
 256 00f2 6F92      		push r6
 257 00f4 7F92      		push r7
 258 00f6 8F92      		push r8
 259 00f8 9F92      		push r9
 260 00fa AF92      		push r10
 261 00fc BF92      		push r11
 262 00fe CF92      		push r12
 263 0100 DF92      		push r13
 264 0102 EF92      		push r14
 265 0104 FF92      		push r15
 266 0106 0F93      		push r16
 267 0108 1F93      		push r17
 268 010a CF93      		push r28
 269 010c DF93      		push r29
 270 010e CDB7      		in r28,__SP_L__
 271 0110 DEB7      		in r29,__SP_H__
 272 0112 C050      		subi r28,lo8(512)
 273 0114 D240      		sbci r29,hi8(512)
 274 0116 0FB6      		in __tmp_reg__,__SREG__
 275 0118 F894      		cli
 276 011a DEBF      		out __SP_H__,r29
 277 011c 0FBE      		out __SREG__,__tmp_reg__
 278 011e CDBF      		out __SP_L__,r28
 279               	/* prologue end (size=25) */
 280               	.LM31:
 281 0120 8091 0000 		lds r24,cbw+17
 282 0124 9927      		clr r25
 283 0126 AA27      		clr r26
 284 0128 BB27      		clr r27
 285 012a BA2F      		mov r27,r26
 286 012c A92F      		mov r26,r25
 287 012e 982F      		mov r25,r24
 288 0130 8827      		clr r24
 289               	.LVL2:
 290               	.LM32:
 291 0132 2091 0000 		lds r18,cbw+18
 292 0136 820F      		add r24,r18
 293 0138 911D      		adc r25,__zero_reg__
 294 013a A11D      		adc r26,__zero_reg__
 295 013c B11D      		adc r27,__zero_reg__
 296               	.LM33:
 297 013e BA2F      		mov r27,r26
 298 0140 A92F      		mov r26,r25
 299 0142 982F      		mov r25,r24
 300 0144 8827      		clr r24
 301               	.LVL3:
 302               	.LM34:
 303 0146 2091 0000 		lds r18,cbw+19
 304 014a 820F      		add r24,r18
 305 014c 911D      		adc r25,__zero_reg__
 306 014e A11D      		adc r26,__zero_reg__
 307 0150 B11D      		adc r27,__zero_reg__
 308               	.LM35:
 309 0152 6624      		clr r6
 310 0154 782E      		mov r7,r24
 311 0156 892E      		mov r8,r25
 312 0158 9A2E      		mov r9,r26
 313               	.LVL4:
 314               	.LM36:
 315 015a 8091 0000 		lds r24,cbw+20
 316               	.LVL5:
 317 015e 680E      		add r6,r24
 318 0160 711C      		adc r7,__zero_reg__
 319 0162 811C      		adc r8,__zero_reg__
 320 0164 911C      		adc r9,__zero_reg__
 321               	.LM37:
 322 0166 8091 0000 		lds r24,cbw+22
 323 016a 9927      		clr r25
 324 016c AA27      		clr r26
 325 016e BB27      		clr r27
 326 0170 AA24      		clr r10
 327 0172 B82E      		mov r11,r24
 328 0174 C92E      		mov r12,r25
 329 0176 DA2E      		mov r13,r26
 330               	.LVL6:
 331               	.LM38:
 332 0178 8091 0000 		lds r24,cbw+23
 333 017c A80E      		add r10,r24
 334 017e B11C      		adc r11,__zero_reg__
 335 0180 C11C      		adc r12,__zero_reg__
 336 0182 D11C      		adc r13,__zero_reg__
 337               	.LM39:
 338 0184 29E0      		ldi r18,9
 339 0186 AA0C      	1:	lsl r10
 340 0188 BB1C      		rol r11
 341 018a CC1C      		rol r12
 342 018c DD1C      		rol r13
 343 018e 2A95      		dec r18
 344 0190 01F4      		brne 1b
 345               	.LM40:
 346 0192 40E4      		ldi r20,lo8(64)
 347 0194 BE01      		movw r22,r28
 348 0196 6F5F      		subi r22,lo8(-(1))
 349 0198 7F4F      		sbci r23,hi8(-(1))
 350 019a 84E0      		ldi r24,lo8(4)
 351 019c 0E94 0000 		call D12_Read_Endpoint
 352               	.LM41:
 353 01a0 80EC      		ldi r24,lo8(-64)
 354 01a2 9FEF      		ldi r25,hi8(-64)
 355 01a4 AFEF      		ldi r26,hlo8(-64)
 356 01a6 BFEF      		ldi r27,hhi8(-64)
 357 01a8 A80E      		add r10,r24
 358 01aa B91E      		adc r11,r25
 359 01ac CA1E      		adc r12,r26
 360 01ae DB1E      		adc r13,r27
 361 01b0 11E0      		ldi r17,lo8(1)

⌨️ 快捷键说明

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