📄 usb_regs.txt
字号:
000038 0280 LSLS r0,r0,#10
|L39.58|
00003a 6008 STR r0,[r1,#0]
|L39.60|
;;;645 }
00003c 4770 BX lr
|L39.62|
00003e 2902 CMP r1,#2 ;644
000040 d1fc BNE |L39.60|
000042 f8d31c50 LDR r1,[r3,#0xc50] ;644
000046 4b05 LDR r3,|L39.92|
000048 b289 UXTH r1,r1 ;644
00004a 1f1b SUBS r3,r3,#4 ;644
00004c eb0100c0 ADD r0,r1,r0,LSL #3 ;644
000050 eb030040 ADD r0,r3,r0,LSL #1 ;644
000054 6042 STR r2,[r0,#4] ;644
000056 4770 BX lr
;;;646 /*******************************************************************************
ENDP
|L39.88|
DCD 0x40005000
|L39.92|
DCD 0x40006004
AREA ||i.SetEPDblBuf1Addr||, CODE, READONLY, ALIGN=2
SetEPDblBuf1Addr PROC
;;;595 *******************************************************************************/
;;;596 void SetEPDblBuf1Addr(u8 bEpNum, u16 wBuf1Addr)
000000 4a05 LDR r2,|L40.24|
;;;597 {
;;;598 _SetEPDblBuf1Addr(bEpNum, wBuf1Addr);
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L40.28|
00000a b29b UXTH r3,r3
00000c eb0300c0 ADD r0,r3,r0,LSL #3
000010 eb020040 ADD r0,r2,r0,LSL #1
;;;599 }
000014 6081 STR r1,[r0,#8]
000016 4770 BX lr
;;;600 /*******************************************************************************
ENDP
|L40.24|
DCD 0x40005c50
|L40.28|
DCD 0x40006000
AREA ||i.SetEPDblBuf1Count||, CODE, READONLY, ALIGN=2
SetEPDblBuf1Count PROC
;;;653 *******************************************************************************/
;;;654 void SetEPDblBuf1Count(u8 bEpNum, u8 bDir, u16 wCount)
000000 4b15 LDR r3,|L41.88|
;;;655 {
;;;656 _SetEPDblBuf1Count(bEpNum, bDir, wCount);
000002 2901 CMP r1,#1
000004 d11b BNE |L41.62|
000006 f8d31c50 LDR r1,[r3,#0xc50]
00000a 4b14 LDR r3,|L41.92|
00000c b289 UXTH r1,r1
00000e eb0100c0 ADD r0,r1,r0,LSL #3
000012 eb030140 ADD r1,r3,r0,LSL #1
000016 2a3e CMP r2,#0x3e
000018 d909 BLS |L41.46|
00001a 0950 LSRS r0,r2,#5
00001c 06d2 LSLS r2,r2,#27
00001e d101 BNE |L41.36|
000020 1e40 SUBS r0,r0,#1
000022 b280 UXTH r0,r0
|L41.36|
000024 f44f4200 MOV r2,#0x8000
000028 ea422080 ORR r0,r2,r0,LSL #10
00002c e005 B |L41.58|
|L41.46|
00002e 0850 LSRS r0,r2,#1
000030 07d2 LSLS r2,r2,#31
000032 d001 BEQ |L41.56|
000034 1c40 ADDS r0,r0,#1
000036 b280 UXTH r0,r0
|L41.56|
000038 0280 LSLS r0,r0,#10
|L41.58|
00003a 6008 STR r0,[r1,#0]
|L41.60|
;;;657 }
00003c 4770 BX lr
|L41.62|
00003e 2902 CMP r1,#2 ;656
000040 d1fc BNE |L41.60|
000042 f8d31c50 LDR r1,[r3,#0xc50] ;656
000046 4b05 LDR r3,|L41.92|
000048 b289 UXTH r1,r1 ;656
00004a 3b0c SUBS r3,r3,#0xc ;656
00004c eb0100c0 ADD r0,r1,r0,LSL #3 ;656
000050 eb030040 ADD r0,r3,r0,LSL #1 ;656
000054 60c2 STR r2,[r0,#0xc] ;656
000056 4770 BX lr
;;;658 /*******************************************************************************
ENDP
|L41.88|
DCD 0x40005000
|L41.92|
DCD 0x4000600c
AREA ||i.SetEPDblBuffAddr||, CODE, READONLY, ALIGN=2
SetEPDblBuffAddr PROC
;;;571 *******************************************************************************/
;;;572 void SetEPDblBuffAddr(u8 bEpNum, u16 wBuf0Addr, u16 wBuf1Addr)
000000 b530 PUSH {r4,r5,lr}
;;;573 {
;;;574 _SetEPDblBuffAddr(bEpNum, wBuf0Addr, wBuf1Addr);
000002 4b0a LDR r3,|L42.44|
000004 f0210401 BIC r4,r1,#1
000008 681d LDR r5,[r3,#0]
00000a 4909 LDR r1,|L42.48|
00000c b2ad UXTH r5,r5
00000e eb0505c0 ADD r5,r5,r0,LSL #3
000012 f8414015 STR r4,[r1,r5,LSL #1]
000016 681b LDR r3,[r3,#0]
000018 f0220201 BIC r2,r2,#1
00001c b29b UXTH r3,r3
00001e eb0300c0 ADD r0,r3,r0,LSL #3
000022 eb010040 ADD r0,r1,r0,LSL #1
;;;575 }
000026 6082 STR r2,[r0,#8]
000028 bd30 POP {r4,r5,pc}
;;;576 /*******************************************************************************
ENDP
00002a 0000 DCW 0x0000
|L42.44|
DCD 0x40005c50
|L42.48|
DCD 0x40006000
AREA ||i.SetEPDblBuffCount||, CODE, READONLY, ALIGN=2
SetEPDblBuffCount PROC
;;;629 *******************************************************************************/
;;;630 void SetEPDblBuffCount(u8 bEpNum, u8 bDir, u16 wCount)
000000 e92d41f0 PUSH {r4-r8,lr}
;;;631 {
;;;632 _SetEPDblBuffCount(bEpNum, bDir, wCount);
000004 4b28 LDR r3,|L43.168|
000006 2901 CMP r1,#1
000008 d132 BNE |L43.112|
00000a 4698 MOV r8,r3
00000c f8d33c50 LDR r3,[r3,#0xc50]
000010 4926 LDR r1,|L43.172|
000012 b29b UXTH r3,r3
000014 eb0303c0 ADD r3,r3,r0,LSL #3
000018 eb010543 ADD r5,r1,r3,LSL #1
00001c 13cf ASRS r7,r1,#15
00001e 0953 LSRS r3,r2,#5
000020 0851 LSRS r1,r2,#1
000022 1c4c ADDS r4,r1,#1
000024 f1a30e01 SUB lr,r3,#1
000028 2a3e CMP r2,#0x3e
00002a d908 BLS |L43.62|
00002c 461e MOV r6,r3
00002e ea5f6cc2 LSLS r12,r2,#27
000032 d101 BNE |L43.56|
000034 fa1ff68e UXTH r6,lr
|L43.56|
000038 ea472686 ORR r6,r7,r6,LSL #10
00003c e005 B |L43.74|
|L43.62|
00003e 460e MOV r6,r1
000040 ea5f7cc2 LSLS r12,r2,#31
000044 d000 BEQ |L43.72|
000046 b2a6 UXTH r6,r4
|L43.72|
000048 02b6 LSLS r6,r6,#10
|L43.74|
00004a 602e STR r6,[r5,#0]
00004c f8d85c50 LDR r5,[r8,#0xc50]
000050 4e16 LDR r6,|L43.172|
000052 b2ad UXTH r5,r5
000054 3608 ADDS r6,r6,#8
000056 eb0500c0 ADD r0,r5,r0,LSL #3
00005a eb060040 ADD r0,r6,r0,LSL #1
00005e 2a3e CMP r2,#0x3e
000060 d91c BLS |L43.156|
000062 06d1 LSLS r1,r2,#27
000064 d101 BNE |L43.106|
000066 fa1ff38e UXTH r3,lr
|L43.106|
00006a ea472183 ORR r1,r7,r3,LSL #10
00006e e019 B |L43.164|
|L43.112|
000070 2902 CMP r1,#2
000072 d111 BNE |L43.152|
000074 f8d34c50 LDR r4,[r3,#0xc50]
000078 490c LDR r1,|L43.172|
00007a b2a4 UXTH r4,r4
00007c 1f09 SUBS r1,r1,#4
00007e eb0404c0 ADD r4,r4,r0,LSL #3
000082 eb010444 ADD r4,r1,r4,LSL #1
000086 6062 STR r2,[r4,#4]
000088 f8d33c50 LDR r3,[r3,#0xc50]
00008c b29b UXTH r3,r3
00008e eb0300c0 ADD r0,r3,r0,LSL #3
000092 eb010040 ADD r0,r1,r0,LSL #1
000096 60c2 STR r2,[r0,#0xc]
|L43.152|
;;;633 }
000098 e8bd81f0 POP {r4-r8,pc}
|L43.156|
00009c 07d2 LSLS r2,r2,#31 ;632
00009e d000 BEQ |L43.162|
0000a0 b2a1 UXTH r1,r4 ;632
|L43.162|
0000a2 0289 LSLS r1,r1,#10 ;632
|L43.164|
0000a4 6001 STR r1,[r0,#0] ;632
0000a6 e7f7 B |L43.152|
;;;634 /*******************************************************************************
ENDP
|L43.168|
DCD 0x40005000
|L43.172|
DCD 0x40006004
AREA ||i.SetEPDoubleBuff||, CODE, READONLY, ALIGN=2
SetEPDoubleBuff PROC
;;;332 *******************************************************************************/
;;;333 void SetEPDoubleBuff(u8 bEpNum)
000000 4906 LDR r1,|L44.28|
;;;334 {
;;;335 _SetEP_KIND(bEpNum);
000002 eb010080 ADD r0,r1,r0,LSL #2
000006 f8d01c00 LDR r1,[r0,#0xc00]
00000a f648728f MOV r2,#0x8f8f
00000e b289 UXTH r1,r1
000010 f4417180 ORR r1,r1,#0x100
000014 4011 ANDS r1,r1,r2
000016 f8c01c00 STR r1,[r0,#0xc00]
;;;336 }
00001a 4770 BX lr
;;;337 /*******************************************************************************
ENDP
|L44.28|
DCD 0x40005000
AREA ||i.SetEPRxAddr||, CODE, READONLY, ALIGN=2
SetEPRxAddr PROC
;;;478 *******************************************************************************/
;;;479 void SetEPRxAddr(u8 bEpNum, u16 wAddr)
000000 4a05 LDR r2,|L45.24|
;;;480 {
;;;481 _SetEPRxAddr(bEpNum, wAddr);
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L45.28|
00000a b29b UXTH r3,r3
00000c eb0300c0 ADD r0,r3,r0,LSL #3
000010 eb020040 ADD r0,r2,r0,LSL #1
;;;482 }
000014 6081 STR r1,[r0,#8]
000016 4770 BX lr
;;;483 /*******************************************************************************
ENDP
|L45.24|
DCD 0x40005c50
|L45.28|
DCD 0x40006000
AREA ||i.SetEPRxCount||, CODE, READONLY, ALIGN=2
SetEPRxCount PROC
;;;536 *******************************************************************************/
;;;537 void SetEPRxCount(u8 bEpNum, u16 wCount)
000000 4a0d LDR r2,|L46.56|
;;;538 {
;;;539 _SetEPRxCount(bEpNum, wCount);
000002 6813 LDR r3,[r2,#0]
000004 4a0d LDR r2,|L46.60|
000006 b29b UXTH r3,r3
000008 eb0300c0 ADD r0,r3,r0,LSL #3
00000c eb020240 ADD r2,r2,r0,LSL #1
000010 293e CMP r1,#0x3e
000012 d909 BLS |L46.40|
000014 0948 LSRS r0,r1,#5
000016 06c9 LSLS r1,r1,#27
000018 d101 BNE |L46.30|
00001a 1e40 SUBS r0,r0,#1
00001c b280 UXTH r0,r0
|L46.30|
00001e f44f4100 MOV r1,#0x8000
000022 ea412080 ORR r0,r1,r0,LSL #10
000026 e005 B |L46.52|
|L46.40|
000028 0848 LSRS r0,r1,#1
00002a 07c9 LSLS r1,r1,#31
00002c d001 BEQ |L46.50|
00002e 1c40 ADDS r0,r0,#1
000030 b280 UXTH r0,r0
|L46.50|
000032 0280 LSLS r0,r0,#10
|L46.52|
000034 6010 STR r0,[r2,#0]
;;;540 }
000036 4770 BX lr
;;;541 /*******************************************************************************
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -