📄 usb_regs.txt
字号:
00000a f3c00003 UBFX r0,r0,#0,#4
;;;458 }
00000e 4770 BX lr
;;;459 /*******************************************************************************
ENDP
|L14.16|
DCD 0x40005000
AREA ||i.GetEPDblBuf0Addr||, CODE, READONLY, ALIGN=2
GetEPDblBuf0Addr PROC
;;;606 *******************************************************************************/
;;;607 u16 GetEPDblBuf0Addr(u8 bEpNum)
000000 4904 LDR r1,|L15.20|
;;;608 {
;;;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,|L15.24|
00000c f8510010 LDR r0,[r1,r0,LSL #1]
000010 b280 UXTH r0,r0
;;;610 }
000012 4770 BX lr
;;;611 /*******************************************************************************
ENDP
|L15.20|
DCD 0x40005c50
|L15.24|
DCD 0x40006000
AREA ||i.GetEPDblBuf0Count||, CODE, READONLY, ALIGN=2
GetEPDblBuf0Count PROC
;;;665 *******************************************************************************/
;;;666 u16 GetEPDblBuf0Count(u8 bEpNum)
000000 4905 LDR r1,|L16.24|
;;;667 {
;;;668 return(_GetEPDblBuf0Count(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L16.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 6840 LDR r0,[r0,#4]
000012 f3c00009 UBFX r0,r0,#0,#10
;;;669 }
000016 4770 BX lr
;;;670 /*******************************************************************************
ENDP
|L16.24|
DCD 0x40005c50
|L16.28|
DCD 0x40006000
AREA ||i.GetEPDblBuf1Addr||, CODE, READONLY, ALIGN=2
GetEPDblBuf1Addr PROC
;;;617 *******************************************************************************/
;;;618 u16 GetEPDblBuf1Addr(u8 bEpNum)
000000 4905 LDR r1,|L17.24|
;;;619 {
;;;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,|L17.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
|L17.24|
DCD 0x40005c50
|L17.28|
DCD 0x40006000
AREA ||i.GetEPDblBuf1Count||, CODE, READONLY, ALIGN=2
GetEPDblBuf1Count PROC
;;;677 *******************************************************************************/
;;;678 u16 GetEPDblBuf1Count(u8 bEpNum)
000000 4905 LDR r1,|L18.24|
;;;679 {
;;;680 return(_GetEPDblBuf1Count(bEpNum));
000002 6809 LDR r1,[r1,#0]
000004 b289 UXTH r1,r1
000006 eb0100c0 ADD r0,r1,r0,LSL #3
00000a 4904 LDR r1,|L18.28|
00000c eb010040 ADD r0,r1,r0,LSL #1
000010 68c0 LDR r0,[r0,#0xc]
000012 f3c00009 UBFX r0,r0,#0,#10
;;;681 }
000016 4770 BX lr
;;;682 /*******************************************************************************
ENDP
|L18.24|
DCD 0x40005c50
|L18.28|
DCD 0x40006000
AREA ||i.GetEPDblBufDir||, CODE, READONLY, ALIGN=2
GetEPDblBufDir PROC
;;;689 *******************************************************************************/
;;;690 EP_DBUF_DIR GetEPDblBufDir(u8 bEpNum)
000000 4a0d LDR r2,|L19.56|
;;;691 {
;;;692 if ((u16)(*_pEPRxCount(bEpNum) & 0xFC00) != 0)
000002 f8d23c50 LDR r3,[r2,#0xc50]
000006 490d LDR r1,|L19.60|
000008 b29b UXTH r3,r3
00000a eb0303c0 ADD r3,r3,r0,LSL #3
00000e eb010343 ADD r3,r1,r3,LSL #1
000012 68db LDR r3,[r3,#0xc]
000014 f4134f7c TST r3,#0xfc00
000018 d001 BEQ |L19.30|
;;;693 return(EP_DBUF_OUT);
00001a 2001 MOVS r0,#1
|L19.28|
;;;694 else if (((u16)(*_pEPTxCount(bEpNum)) & 0x03FF) != 0)
;;;695 return(EP_DBUF_IN);
;;;696 else
;;;697 return(EP_DBUF_ERR);
;;;698 }
00001c 4770 BX lr
|L19.30|
00001e f8d22c50 LDR r2,[r2,#0xc50] ;694
000022 b292 UXTH r2,r2 ;694
000024 eb0200c0 ADD r0,r2,r0,LSL #3 ;694
000028 eb010040 ADD r0,r1,r0,LSL #1 ;694
00002c 6840 LDR r0,[r0,#4] ;694
00002e 0580 LSLS r0,r0,#22 ;694
000030 d0f4 BEQ |L19.28|
000032 2002 MOVS r0,#2 ;695
000034 4770 BX lr
;;;699 /*******************************************************************************
ENDP
000036 0000 DCW 0x0000
|L19.56|
DCD 0x40005000
|L19.60|
DCD 0x40006000
AREA ||i.GetEPRxAddr||, CODE, READONLY, ALIGN=2
GetEPRxAddr PROC
;;;500 *******************************************************************************/
;;;501 u16 GetEPRxAddr(u8 bEpNum)
000000 4905 LDR r1,|L20.24|
;;;502 {
;;;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,|L20.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
|L20.24|
DCD 0x40005c50
|L20.28|
DCD 0x40006000
AREA ||i.GetEPRxCount||, CODE, READONLY, ALIGN=2
GetEPRxCount PROC
;;;558 *******************************************************************************/
;;;559 u16 GetEPRxCount(u8 bEpNum)
000000 4905 LDR r1,|L21.24|
;;;560 {
;;;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,|L21.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
|L21.24|
DCD 0x40005c50
|L21.28|
DCD 0x40006000
AREA ||i.GetEPRxStatus||, CODE, READONLY, ALIGN=2
GetEPRxStatus PROC
;;;251 *******************************************************************************/
;;;252 u16 GetEPRxStatus(u8 bEpNum)
000000 4904 LDR r1,|L22.20|
;;;253 {
;;;254 return(_GetEPRxStatus(bEpNum));
000002 eb010080 ADD r0,r1,r0,LSL #2
000006 f8d00c00 LDR r0,[r0,#0xc00]
00000a f3c03001 UBFX r0,r0,#12,#2
00000e 0300 LSLS r0,r0,#12
;;;255 }
000010 4770 BX lr
;;;256
ENDP
000012 0000 DCW 0x0000
|L22.20|
DCD 0x40005000
AREA ||i.GetEPTxAddr||, CODE, READONLY, ALIGN=2
GetEPTxAddr PROC
;;;489 *******************************************************************************/
;;;490 u16 GetEPTxAddr(u8 bEpNum)
000000 4904 LDR r1,|L23.20|
;;;491 {
;;;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,|L23.24|
00000c f8510010 LDR r0,[r1,r0,LSL #1]
000010 b280 UXTH r0,r0
;;;493 }
000012 4770 BX lr
;;;494 /*******************************************************************************
ENDP
|L23.20|
DCD 0x40005c50
|L23.24|
DCD 0x40006000
AREA ||i.GetEPTxCount||, CODE, READONLY, ALIGN=2
GetEPTxCount PROC
;;;547 *******************************************************************************/
;;;548 u16 GetEPTxCount(u8 bEpNum)
000000 4905 LDR r1,|L24.24|
;;;549 {
;;;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,|L24.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
|L24.24|
DCD 0x40005c50
|L24.28|
DCD 0x40006000
AREA ||i.GetEPTxStatus||, CODE, READONLY, ALIGN=2
GetEPTxStatus PROC
;;;239 *******************************************************************************/
;;;240 u16 GetEPTxStatus(u8 bEpNum)
000000 4904 LDR r1,|L25.20|
;;;241 {
;;;242 return(_GetEPTxStatus(bEpNum));
000002 eb010080 ADD r0,r1,r0,LSL #2
000006 f8d00c00 LDR r0,[r0,#0xc00]
00000a f3c01001 UBFX r0,r0,#4,#2
00000e 0100 LSLS r0,r0,#4
;;;243 }
000010 4770 BX lr
;;;244
ENDP
000012 0000 DCW 0x0000
|L25.20|
DCD 0x40005000
AREA ||i.GetEPType||, CODE, READONLY, ALIGN=2
GetEPType PROC
;;;179 *******************************************************************************/
;;;180 u16 GetEPType(u8 bEpNum)
000000 4904 LDR r1,|L26.20|
;;;181 {
;;;182 return(_GetEPType(bEpNum));
000002 eb010080 ADD r0,r1,r0,LSL #2
000006 f8d00c00 LDR r0,[r0,#0xc00]
00000a f3c02041 UBFX r0,r0,#9,#2
00000e 0240 LSLS r0,r0,#9
;;;183 }
000010 4770 BX lr
;;;184
ENDP
000012 0000 DCW 0x0000
|L26.20|
DCD 0x40005000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -