📄 usb_regs.txt
字号:
;;;458 }
00000e 4770 BX lr
;;;459 /*******************************************************************************
ENDP
|L36.16|
000010 40005000 DCD 0x40005000
AREA ||i.SetEPTxAddr||, CODE, READONLY, ALIGN=2
SetEPTxAddr PROC
;;;468 {
;;;469 _SetEPTxAddr(bEpNum, wAddr);
000000 4a05 LDR r2,|L37.24|
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L37.28|
00000a b29b UXTH r3,r3
00000c eb0300c0 ADD r0,r3,r0,LSL #3
000010 f8421010 STR r1,[r2,r0,LSL #1]
;;;470 }
000014 4770 BX lr
;;;471 /*******************************************************************************
ENDP
000016 0000 DCW 0x0000
|L37.24|
000018 40005c50 DCD 0x40005c50
|L37.28|
00001c 40006000 DCD 0x40006000
AREA ||i.SetEPRxAddr||, CODE, READONLY, ALIGN=2
SetEPRxAddr PROC
;;;480 {
;;;481 _SetEPRxAddr(bEpNum, wAddr);
000000 4a05 LDR r2,|L38.24|
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L38.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
|L38.24|
000018 40005c50 DCD 0x40005c50
|L38.28|
00001c 40006000 DCD 0x40006000
AREA ||i.GetEPTxAddr||, CODE, READONLY, ALIGN=2
GetEPTxAddr PROC
;;;490 u16 GetEPTxAddr(u8 bEpNum)
;;;491 {
000000 4904 LDR r1,|L39.20|
;;;492 return(_GetEPTxAddr(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4903 LDR r1,|L39.24|
00000c f8510010 LDR r0,[r1,r0,LSL #1]
000010 b280 UXTH r0,r0
;;;493 }
000012 4770 BX lr
;;;494 /*******************************************************************************
ENDP
|L39.20|
000014 40005c50 DCD 0x40005c50
|L39.24|
000018 40006000 DCD 0x40006000
AREA ||i.GetEPRxAddr||, CODE, READONLY, ALIGN=2
GetEPRxAddr PROC
;;;501 u16 GetEPRxAddr(u8 bEpNum)
;;;502 {
000000 4905 LDR r1,|L40.24|
;;;503 return(_GetEPRxAddr(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L40.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 6880 LDR r0,[r0,#8]
000012 b280 UXTH r0,r0
;;;504 }
000014 4770 BX lr
;;;505 /*******************************************************************************
ENDP
000016 0000 DCW 0x0000
|L40.24|
000018 40005c50 DCD 0x40005c50
|L40.28|
00001c 40006000 DCD 0x40006000
AREA ||i.SetEPTxCount||, CODE, READONLY, ALIGN=2
SetEPTxCount PROC
;;;513 void SetEPTxCount(u8 bEpNum, u16 wCount)
;;;514 {
000000 4a04 LDR r2,|L41.20|
;;;515 _SetEPTxCount(bEpNum, wCount);
000002 6813 LDR r3,[r2,#0]
000004 4a04 LDR r2,|L41.24|
000006 b29b UXTH r3,r3
000008 eb0300c0 ADD r0,r3,r0,LSL #3
00000c eb020040 ADD r0,r2,r0,LSL #1
;;;516 }
000010 6041 STR r1,[r0,#4]
000012 4770 BX lr
;;;517 /*******************************************************************************
ENDP
|L41.20|
000014 40005c50 DCD 0x40005c50
|L41.24|
000018 40006000 DCD 0x40006000
AREA ||i.SetEPCountRxReg||, CODE, READONLY, ALIGN=1
SetEPCountRxReg PROC
;;;526 {
;;;527 _SetEPCountRxReg(dwReg, wCount);
000000 293e CMP r1,#0x3e
000002 d909 BLS |L42.24|
000004 094a LSRS r2,r1,#5
000006 06c9 LSLS r1,r1,#27
000008 d101 BNE |L42.14|
00000a 1e52 SUBS r2,r2,#1
00000c b292 UXTH r2,r2
|L42.14|
00000e f44f4100 MOV r1,#0x8000
000012 ea412182 ORR r1,r1,r2,LSL #10
000016 e005 B |L42.36|
|L42.24|
000018 084a LSRS r2,r1,#1
00001a 07c9 LSLS r1,r1,#31
00001c d001 BEQ |L42.34|
00001e 1c52 ADDS r2,r2,#1
000020 b292 UXTH r2,r2
|L42.34|
000022 0291 LSLS r1,r2,#10
|L42.36|
000024 6001 STR r1,[r0,#0]
;;;528 }
000026 4770 BX lr
;;;529 /*******************************************************************************
ENDP
AREA ||i.SetEPRxCount||, CODE, READONLY, ALIGN=2
SetEPRxCount PROC
;;;537 void SetEPRxCount(u8 bEpNum, u16 wCount)
;;;538 {
000000 4a0d LDR r2,|L43.56|
;;;539 _SetEPRxCount(bEpNum, wCount);
000002 6813 LDR r3,[r2,#0]
000004 4a0d LDR r2,|L43.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 |L43.40|
000014 0948 LSRS r0,r1,#5
000016 06c9 LSLS r1,r1,#27
000018 d101 BNE |L43.30|
00001a 1e40 SUBS r0,r0,#1
00001c b280 UXTH r0,r0
|L43.30|
00001e f44f4100 MOV r1,#0x8000
000022 ea412080 ORR r0,r1,r0,LSL #10
000026 e005 B |L43.52|
|L43.40|
000028 0848 LSRS r0,r1,#1
00002a 07c9 LSLS r1,r1,#31
00002c d001 BEQ |L43.50|
00002e 1c40 ADDS r0,r0,#1
000030 b280 UXTH r0,r0
|L43.50|
000032 0280 LSLS r0,r0,#10
|L43.52|
000034 6010 STR r0,[r2,#0]
;;;540 }
000036 4770 BX lr
;;;541 /*******************************************************************************
ENDP
|L43.56|
000038 40005c50 DCD 0x40005c50
|L43.60|
00003c 4000600c DCD 0x4000600c
AREA ||i.GetEPTxCount||, CODE, READONLY, ALIGN=2
GetEPTxCount PROC
;;;548 u16 GetEPTxCount(u8 bEpNum)
;;;549 {
000000 4905 LDR r1,|L44.24|
;;;550 return(_GetEPTxCount(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L44.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 6840 LDR r0,[r0,#4]
000012 f3c00009 UBFX r0,r0,#0,#10
;;;551 }
000016 4770 BX lr
;;;552 /*******************************************************************************
ENDP
|L44.24|
000018 40005c50 DCD 0x40005c50
|L44.28|
00001c 40006000 DCD 0x40006000
AREA ||i.GetEPRxCount||, CODE, READONLY, ALIGN=2
GetEPRxCount PROC
;;;559 u16 GetEPRxCount(u8 bEpNum)
;;;560 {
000000 4905 LDR r1,|L45.24|
;;;561 return(_GetEPRxCount(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L45.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 68c0 LDR r0,[r0,#0xc]
000012 f3c00009 UBFX r0,r0,#0,#10
;;;562 }
000016 4770 BX lr
;;;563 /*******************************************************************************
ENDP
|L45.24|
000018 40005c50 DCD 0x40005c50
|L45.28|
00001c 40006000 DCD 0x40006000
AREA ||i.SetEPDblBuffAddr||, CODE, READONLY, ALIGN=2
SetEPDblBuffAddr PROC
;;;572 void SetEPDblBuffAddr(u8 bEpNum, u16 wBuf0Addr, u16 wBuf1Addr)
;;;573 {
000000 b530 PUSH {r4,r5,lr}
;;;574 _SetEPDblBuffAddr(bEpNum, wBuf0Addr, wBuf1Addr);
000002 4b0a LDR r3,|L46.44|
000004 f0210401 BIC r4,r1,#1
000008 681d LDR r5,[r3,#0]
00000a 4909 LDR r1,|L46.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
|L46.44|
00002c 40005c50 DCD 0x40005c50
|L46.48|
000030 40006000 DCD 0x40006000
AREA ||i.SetEPDblBuf0Addr||, CODE, READONLY, ALIGN=2
SetEPDblBuf0Addr PROC
;;;585 {
;;;586 _SetEPDblBuf0Addr(bEpNum, wBuf0Addr);
000000 4a05 LDR r2,|L47.24|
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L47.28|
00000a b29b UXTH r3,r3
00000c eb0300c0 ADD r0,r3,r0,LSL #3
000010 f8421010 STR r1,[r2,r0,LSL #1]
;;;587 }
000014 4770 BX lr
;;;588 /*******************************************************************************
ENDP
000016 0000 DCW 0x0000
|L47.24|
000018 40005c50 DCD 0x40005c50
|L47.28|
00001c 40006000 DCD 0x40006000
AREA ||i.SetEPDblBuf1Addr||, CODE, READONLY, ALIGN=2
SetEPDblBuf1Addr PROC
;;;597 {
;;;598 _SetEPDblBuf1Addr(bEpNum, wBuf1Addr);
000000 4a05 LDR r2,|L48.24|
000002 f0210101 BIC r1,r1,#1
000006 6813 LDR r3,[r2,#0]
000008 4a04 LDR r2,|L48.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
|L48.24|
000018 40005c50 DCD 0x40005c50
|L48.28|
00001c 40006000 DCD 0x40006000
AREA ||i.GetEPDblBuf0Addr||, CODE, READONLY, ALIGN=2
GetEPDblBuf0Addr PROC
;;;607 u16 GetEPDblBuf0Addr(u8 bEpNum)
;;;608 {
000000 4904 LDR r1,|L49.20|
;;;609 return(_GetEPDblBuf0Addr(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4903 LDR r1,|L49.24|
00000c f8510010 LDR r0,[r1,r0,LSL #1]
000010 b280 UXTH r0,r0
;;;610 }
000012 4770 BX lr
;;;611 /*******************************************************************************
ENDP
|L49.20|
000014 40005c50 DCD 0x40005c50
|L49.24|
000018 40006000 DCD 0x40006000
AREA ||i.GetEPDblBuf1Addr||, CODE, READONLY, ALIGN=2
GetEPDblBuf1Addr PROC
;;;618 u16 GetEPDblBuf1Addr(u8 bEpNum)
;;;619 {
000000 4905 LDR r1,|L50.24|
;;;620 return(_GetEPDblBuf1Addr(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L50.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 6880 LDR r0,[r0,#8]
000012 b280 UXTH r0,r0
;;;621 }
000014 4770 BX lr
;;;622 /*******************************************************************************
ENDP
000016 0000 DCW 0x0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -