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

📄 usb_regs.txt

📁 MP3_PLAYER.rar
💻 TXT
📖 第 1 页 / 共 4 页
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 938] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\usb_regs.o --depend=.\Obj\usb_regs.d --device=DARMSTM --apcs=interwork -O3 -I.\Code\FATSystem\INC -I.\Code\Library\INC -I.\Code\SDCard\INC -I.\Code\Speaker\INC -I.\Code\System\INC -I.\Code\USBMassStorage\INC -I.\Code\User\INC -I.\Code\VS1003\INC -ID:\Keil\ARM\INC\ST\STM32F10x --omf_browse=.\Obj\usb_regs.crf Code\USBMassStorage\SRC\usb_regs.c]
                          THUMB

                          AREA ||i.SetCNTR||, CODE, READONLY, ALIGN=2

                  SetCNTR PROC
;;;34     void SetCNTR(u16 wRegValue)
;;;35     {
000000  4901              LDR      r1,|L1.8|
;;;36       _SetCNTR(wRegValue);
000002  6008              STR      r0,[r1,#0]
;;;37     }
000004  4770              BX       lr
;;;38     
                          ENDP

000006  0000              DCW      0x0000
                  |L1.8|
000008  40005c40          DCD      0x40005c40

                          AREA ||i.GetCNTR||, CODE, READONLY, ALIGN=2

                  GetCNTR PROC
;;;46     u16 GetCNTR(void)
;;;47     {
000000  4801              LDR      r0,|L2.8|
;;;48       return(_GetCNTR());
000002  6800              LDR      r0,[r0,#0]
000004  b280              UXTH     r0,r0
;;;49     }
000006  4770              BX       lr
;;;50     
                          ENDP

                  |L2.8|
000008  40005c40          DCD      0x40005c40

                          AREA ||i.SetISTR||, CODE, READONLY, ALIGN=2

                  SetISTR PROC
;;;58     void SetISTR(u16 wRegValue)
;;;59     {
000000  4901              LDR      r1,|L3.8|
;;;60       _SetISTR(wRegValue);
000002  6008              STR      r0,[r1,#0]
;;;61     }
000004  4770              BX       lr
;;;62     
                          ENDP

000006  0000              DCW      0x0000
                  |L3.8|
000008  40005c44          DCD      0x40005c44

                          AREA ||i.GetISTR||, CODE, READONLY, ALIGN=2

                  GetISTR PROC
;;;70     u16 GetISTR(void)
;;;71     {
000000  4801              LDR      r0,|L4.8|
;;;72       return(_GetISTR());
000002  6800              LDR      r0,[r0,#0]
000004  b280              UXTH     r0,r0
;;;73     }
000006  4770              BX       lr
;;;74     
                          ENDP

                  |L4.8|
000008  40005c44          DCD      0x40005c44

                          AREA ||i.GetFNR||, CODE, READONLY, ALIGN=2

                  GetFNR PROC
;;;82     u16 GetFNR(void)
;;;83     {
000000  4801              LDR      r0,|L5.8|
;;;84       return(_GetFNR());
000002  6800              LDR      r0,[r0,#0]
000004  b280              UXTH     r0,r0
;;;85     }
000006  4770              BX       lr
;;;86     
                          ENDP

                  |L5.8|
000008  40005c48          DCD      0x40005c48

                          AREA ||i.SetDADDR||, CODE, READONLY, ALIGN=2

                  SetDADDR PROC
;;;94     void SetDADDR(u16 wRegValue)
;;;95     {
000000  4901              LDR      r1,|L6.8|
;;;96       _SetDADDR(wRegValue);
000002  6008              STR      r0,[r1,#0]
;;;97     }
000004  4770              BX       lr
;;;98     
                          ENDP

000006  0000              DCW      0x0000
                  |L6.8|
000008  40005c4c          DCD      0x40005c4c

                          AREA ||i.GetDADDR||, CODE, READONLY, ALIGN=2

                  GetDADDR PROC
;;;106    u16 GetDADDR(void)
;;;107    {
000000  4801              LDR      r0,|L7.8|
;;;108      return(_GetDADDR());
000002  6800              LDR      r0,[r0,#0]
000004  b280              UXTH     r0,r0
;;;109    }
000006  4770              BX       lr
;;;110    
                          ENDP

                  |L7.8|
000008  40005c4c          DCD      0x40005c4c

                          AREA ||i.SetBTABLE||, CODE, READONLY, ALIGN=2

                  SetBTABLE PROC
;;;119    {
;;;120      _SetBTABLE(wRegValue);
000000  4902              LDR      r1,|L8.12|
000002  f0200007          BIC      r0,r0,#7
000006  6008              STR      r0,[r1,#0]
;;;121    }
000008  4770              BX       lr
;;;122    
                          ENDP

00000a  0000              DCW      0x0000
                  |L8.12|
00000c  40005c50          DCD      0x40005c50

                          AREA ||i.GetBTABLE||, CODE, READONLY, ALIGN=2

                  GetBTABLE PROC
;;;130    u16 GetBTABLE(void)
;;;131    {
000000  4801              LDR      r0,|L9.8|
;;;132      return(_GetBTABLE());
000002  6800              LDR      r0,[r0,#0]
000004  b280              UXTH     r0,r0
;;;133    }
000006  4770              BX       lr
;;;134    
                          ENDP

                  |L9.8|
000008  40005c50          DCD      0x40005c50

                          AREA ||i.SetENDPOINT||, CODE, READONLY, ALIGN=2

                  SetENDPOINT PROC
;;;144    {
;;;145      _SetENDPOINT(bEpNum, wRegValue);
000000  4a02              LDR      r2,|L10.12|
000002  eb020080          ADD      r0,r2,r0,LSL #2
000006  f8c01c00          STR      r1,[r0,#0xc00]
;;;146    }
00000a  4770              BX       lr
;;;147    
                          ENDP

                  |L10.12|
00000c  40005000          DCD      0x40005000

                          AREA ||i.GetENDPOINT||, CODE, READONLY, ALIGN=2

                  GetENDPOINT PROC
000000  4903              LDR      r1,|L11.16|
000002  eb010080          ADD      r0,r1,r0,LSL #2
000006  f8d00c00          LDR      r0,[r0,#0xc00]
00000a  b280              UXTH     r0,r0
00000c  4770              BX       lr
                          ENDP

00000e  0000              DCW      0x0000
                  |L11.16|
000010  40005000          DCD      0x40005000

                          AREA ||i.SetEPType||, CODE, READONLY, ALIGN=2

                  SetEPType PROC
;;;169    {
;;;170      _SetEPType(bEpNum, wType);
000000  4a06              LDR      r2,|L12.28|
000002  eb020080          ADD      r0,r2,r0,LSL #2
000006  f8d02c00          LDR      r2,[r0,#0xc00]
00000a  f648138f          MOV      r3,#0x898f
00000e  b292              UXTH     r2,r2
000010  401a              ANDS     r2,r2,r3
000012  430a              ORRS     r2,r2,r1
000014  f8c02c00          STR      r2,[r0,#0xc00]
;;;171    }
000018  4770              BX       lr
;;;172    
                          ENDP

00001a  0000              DCW      0x0000
                  |L12.28|
00001c  40005000          DCD      0x40005000

                          AREA ||i.GetEPType||, CODE, READONLY, ALIGN=2

                  GetEPType PROC
;;;181    {
;;;182      return(_GetEPType(bEpNum));
000000  4904              LDR      r1,|L13.20|
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
                  |L13.20|
000014  40005000          DCD      0x40005000

                          AREA ||i.SetEPTxStatus||, CODE, READONLY, ALIGN=2

                  SetEPTxStatus PROC
;;;194    {
;;;195      _SetEPTxStatus(bEpNum, wState);
000000  4a0a              LDR      r2,|L14.44|
000002  b510              PUSH     {r4,lr}               ;194
000004  eb020280          ADD      r2,r2,r0,LSL #2
000008  f8d20c00          LDR      r0,[r2,#0xc00]
00000c  f64874bf          MOV      r4,#0x8fbf
000010  b280              UXTH     r0,r0
000012  06cb              LSLS     r3,r1,#27
000014  ea000004          AND      r0,r0,r4
000018  d501              BPL      |L14.30|
00001a  f0800010          EOR      r0,r0,#0x10
                  |L14.30|
00001e  0689              LSLS     r1,r1,#26
000020  d501              BPL      |L14.38|
000022  f0800020          EOR      r0,r0,#0x20
                  |L14.38|
000026  f8c20c00          STR      r0,[r2,#0xc00]
;;;196    }
00002a  bd10              POP      {r4,pc}
;;;197    
                          ENDP

                  |L14.44|
00002c  40005000          DCD      0x40005000

                          AREA ||i.SetEPRxStatus||, CODE, READONLY, ALIGN=2

                  SetEPRxStatus PROC
;;;207    {
;;;208      _SetEPRxStatus(bEpNum, wState);
000000  4a0a              LDR      r2,|L15.44|
000002  b510              PUSH     {r4,lr}               ;207
000004  eb020280          ADD      r2,r2,r0,LSL #2
000008  f8d20c00          LDR      r0,[r2,#0xc00]
00000c  f64b748f          MOV      r4,#0xbf8f
000010  b280              UXTH     r0,r0
000012  04cb              LSLS     r3,r1,#19
000014  ea000004          AND      r0,r0,r4
000018  d501              BPL      |L15.30|
00001a  f4805080          EOR      r0,r0,#0x1000
                  |L15.30|
00001e  0489              LSLS     r1,r1,#18
000020  d501              BPL      |L15.38|
000022  f4805000          EOR      r0,r0,#0x2000
                  |L15.38|
000026  f8c20c00          STR      r0,[r2,#0xc00]
;;;209    }
00002a  bd10              POP      {r4,pc}
;;;210    
                          ENDP

                  |L15.44|
00002c  40005000          DCD      0x40005000

                          AREA ||i.SetDouBleBuffEPStall||, CODE, READONLY, ALIGN=2

                  SetDouBleBuffEPStall PROC
;;;219    void SetDouBleBuffEPStall(u8 bEpNum, u8 bDir)
;;;220    {
000000  b500              PUSH     {lr}
000002  4603              MOV      r3,r0
000004  460a              MOV      r2,r1
;;;221      u16 Endpoint_DTOG_Status;
;;;222      Endpoint_DTOG_Status = GetENDPOINT(bEpNum);
000006  f7fffffe          BL       GetENDPOINT
00000a  4907              LDR      r1,|L16.40|
;;;223      if (bDir == EP_DBUF_OUT)
00000c  2a01              CMP      r2,#1
00000e  eb010183          ADD      r1,r1,r3,LSL #2       ;222
000012  d102              BNE      |L16.26|
;;;224      { /* OUT double buffered endpoint */
;;;225        _SetENDPOINT(bEpNum, Endpoint_DTOG_Status & ~EPRX_DTOG1);
000014  f4205080          BIC      r0,r0,#0x1000
000018  e003              B        |L16.34|
                  |L16.26|
;;;226      }
;;;227      else if (bDir == EP_DBUF_IN)
00001a  2a02              CMP      r2,#2
00001c  d103              BNE      |L16.38|
;;;228      { /* IN double buffered endpoint */
;;;229        _SetENDPOINT(bEpNum, Endpoint_DTOG_Status & ~EPTX_DTOG1);
00001e  f0200010          BIC      r0,r0,#0x10
                  |L16.34|
000022  f8c10c00          STR      r0,[r1,#0xc00]        ;225
                  |L16.38|
;;;230      }
;;;231    }
000026  bd00              POP      {pc}
;;;232    
                          ENDP

                  |L16.40|
000028  40005000          DCD      0x40005000

                          AREA ||i.GetEPTxStatus||, CODE, READONLY, ALIGN=2

                  GetEPTxStatus PROC
;;;241    {
;;;242      return(_GetEPTxStatus(bEpNum));
000000  4904              LDR      r1,|L17.20|
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
                  |L17.20|
000014  40005000          DCD      0x40005000

                          AREA ||i.GetEPRxStatus||, CODE, READONLY, ALIGN=2

                  GetEPRxStatus PROC
;;;253    {
;;;254      return(_GetEPRxStatus(bEpNum));
000000  4904              LDR      r1,|L18.20|
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
                  |L18.20|
000014  40005000          DCD      0x40005000

                          AREA ||i.SetEPTxValid||, CODE, READONLY, ALIGN=2

                  SetEPTxValid PROC
;;;265    {

⌨️ 快捷键说明

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