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

📄 vcomuser.lst

📁 NXP产品LPC23XX的开发板的源文件
💻 LST
📖 第 1 页 / 共 5 页
字号:
 0000003A  3101      ADD         R1,#0x1
 0000003C  7001      STRB        R1,[R0,#0x0] ; RxLength0
  125:     }
 0000003E  E033      B           L_19  ; T=0x000000A8
 00000040          L_16:
  126:     else if ( (RxLength0 == USB_VCOM_BUFSIZE) ) {
 00000040  4800      LDR         R0,=RxLength0 ; RxLength0
 00000042  7800      LDRB        R0,[R0,#0x0] ; RxLength0
 00000044  2804      CMP         R0,#0x4
 00000046  D12F      BNE         L_19  ; T=0x000000A8
  127:         USB_WriteEP(0x80 | 0x02, &UART2USBBuf0[0], USB_VCOM_BUFSIZE );
 00000048  4800      LDR         R1,=UART2USBBuf0 ; UART2USBBuf0
 0000004A  2082      MOV         R0,#0x82
 0000004C  2204      MOV         R2,#0x4
 0000004E  F7FF      BL          USB_WriteEP?T  ; T=0x0001  (1)
 00000050  FFD7      BL          USB_WriteEP?T  ; T=0x0001  (2)
  128:         RxLength0 = 0;
 00000052  2100      MOV         R1,#0x0
 00000054  4800      LDR         R0,=RxLength0 ; RxLength0
 00000056  7001      STRB        R1,[R0,#0x0] ; RxLength0
  131:   }
 00000058  E026      B           L_19  ; T=0x000000A8
 0000005A          L_15:
  132:   else if ( portNum == 1 )
 0000005A  2D01      CMP         R5,#0x1
 0000005C  D124      BNE         L_19  ; T=0x000000A8
  146:     if ( ((U1LSR & 0x01) == 1) && (RxLength1 < USB_VCOM_BUFSIZE) ) {
 0000005E  4800      LDR         R0,=0xE0010014
ARM COMPILER V2.31,  VCOMuser                                                              23/11/05  10:53:11  PAGE 16  

 00000060  7800      LDRB        R0,[R0,#0x0]
 00000062  2101      MOV         R1,#0x1
 00000064  4008      AND         R0,R1
 00000066  2801      CMP         R0,#0x1
 00000068  D112      BNE         L_21  ; T=0x00000090
 0000006A  4800      LDR         R0,=RxLength1 ; RxLength1
 0000006C  7800      LDRB        R0,[R0,#0x0] ; RxLength1
 0000006E  2804      CMP         R0,#0x4
 00000070  DA0E      BGE         L_21  ; T=0x00000090
  147:         UART2USBBuf1[RxLength1] = getchar( portNum );
 00000072  1C20      MOV         R0,R4 ; portNum
 00000074  0600      LSL         R0,R0,#0x18 ; portNum
 00000076  0E00      LSR         R0,R0,#0x18
 00000078  F7FF      BL          getchar?T  ; T=0x0001  (1)
 0000007A  FFC2      BL          getchar?T  ; T=0x0001  (2)
 0000007C  4800      LDR         R1,=RxLength1 ; RxLength1
 0000007E  7809      LDRB        R1,[R1,#0x0] ; RxLength1
 00000080  1C0A      MOV         R2,R1
 00000082  4800      LDR         R1,=UART2USBBuf1 ; UART2USBBuf1
 00000084  5488      STRB        R0,[R1,R2]
  148:         RxLength1++;
 00000086  4800      LDR         R0,=RxLength1 ; RxLength1
 00000088  7801      LDRB        R1,[R0,#0x0] ; RxLength1
 0000008A  3101      ADD         R1,#0x1
 0000008C  7001      STRB        R1,[R0,#0x0] ; RxLength1
  149:     }
 0000008E  E00B      B           L_19  ; T=0x000000A8
 00000090          L_21:
  150:     else if ( (RxLength1 == USB_VCOM_BUFSIZE) ) {
 00000090  4800      LDR         R0,=RxLength1 ; RxLength1
 00000092  7800      LDRB        R0,[R0,#0x0] ; RxLength1
 00000094  2804      CMP         R0,#0x4
 00000096  D107      BNE         L_19  ; T=0x000000A8
  151:         USB_WriteEP(0x80 | 0x05, &UART2USBBuf1[0], USB_VCOM_BUFSIZE );
 00000098  4800      LDR         R1,=UART2USBBuf1 ; UART2USBBuf1
 0000009A  2085      MOV         R0,#0x85
 0000009C  2204      MOV         R2,#0x4
 0000009E  F7FF      BL          USB_WriteEP?T  ; T=0x0001  (1)
 000000A0  FFAF      BL          USB_WriteEP?T  ; T=0x0001  (2)
  152:         RxLength1 = 0;
 000000A2  2100      MOV         R1,#0x0
 000000A4  4800      LDR         R0,=RxLength1 ; RxLength1
 000000A6  7001      STRB        R1,[R0,#0x0] ; RxLength1
  155:   }
 000000A8          L_19:
  157: }
 000000A8  BC30      POP         {R4-R5}
 000000AA  BC08      POP         {R3}
 000000AC  4718      BX          R3
 000000AE          ENDP ; 'DeviceData2Host?T'


*** CODE SEGMENT '?PR?USB_Reset_Event?T?VCOMuser':
  177: void USB_Reset_Event (void) {
 00000000  B500      PUSH        {LR}
  178:   USB_ResetCore();
 00000002  F7FF      BL          USB_ResetCore?T  ; T=0x0001  (1)
 00000004  FFFD      BL          USB_ResetCore?T  ; T=0x0001  (2)
  179: }
 00000006  BC08      POP         {R3}
 00000008  4718      BX          R3
 0000000A          ENDP ; 'USB_Reset_Event?T'


*** CODE SEGMENT '?PR?USB_Configure_Event?T?VCOMuser':
  241:   if (USB_Configuration) {             /* Check if USB is configured */
 00000000  4800      LDR         R0,=USB_Configuration ; USB_Configuration
 00000002  7800      LDRB        R0,[R0,#0x0] ; USB_Configuration
 00000004  2800      CMP         R0,#0x0
 00000006  D00B      BEQ         L_25  ; T=0x00000020
ARM COMPILER V2.31,  VCOMuser                                                              23/11/05  10:53:11  PAGE 17  

  242:     ReportStatus0 = ReportStatus1 = 1;
 00000008  2101      MOV         R1,#0x1
 0000000A  4800      LDR         R0,=ReportStatus1 ; ReportStatus1
 0000000C  7001      STRB        R1,[R0,#0x0] ; ReportStatus1
 0000000E  2101      MOV         R1,#0x1
 00000010  4800      LDR         R0,=ReportStatus0 ; ReportStatus0
 00000012  7001      STRB        R1,[R0,#0x0] ; ReportStatus0
  243:     Data2Host0 = Data2Host1 = 1;
 00000014  2101      MOV         R1,#0x1
 00000016  4800      LDR         R0,=Data2Host1 ; Data2Host1
 00000018  7001      STRB        R1,[R0,#0x0] ; Data2Host1
 0000001A  2101      MOV         R1,#0x1
 0000001C  4800      LDR         R0,=Data2Host0 ; Data2Host0
 0000001E  7001      STRB        R1,[R0,#0x0] ; Data2Host0
  244:   }
 00000020          L_25:
  245: }
 00000020  4770      BX          R14
 00000022          ENDP ; 'USB_Configure_Event?T'


*** CODE SEGMENT '?PR?USB_EndPoint1?T?VCOMuser':
  296: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint1?T'


*** CODE SEGMENT '?PR?USB_EndPoint2?T?VCOMuser':
  303: void USB_EndPoint2 (DWORD event) {
 00000000  B500      PUSH        {LR}
 00000002  1C01      MOV         R1,R0 ; event
 00000004  ---- Variable 'event' assigned to Register 'R1' ----
  304:   switch (event) {
 00000004  1C08      MOV         R0,R1 ; event
 00000006  2802      CMP         R0,#0x2 ; event
 00000008  D005      BEQ         L_27  ; T=0x00000016
 0000000A  2803      CMP         R0,#0x3 ; event
 0000000C  D106      BNE         L_26  ; T=0x0000001C
  305:     case USB_EVT_IN:
 0000000E          L_28:
  306:       Data2Host0 = 1;
 0000000E  2101      MOV         R1,#0x1
 00000010  4800      LDR         R0,=Data2Host0 ; Data2Host0
 00000012  7001      STRB        R1,[R0,#0x0] ; Data2Host0
  307:       break;
 00000014  E002      B           L_26  ; T=0x0000001C
  308:     case USB_EVT_OUT:
 00000016          L_27:
  309:       DeviceData2UART( 0 );
 00000016  2000      MOV         R0,#0x0
 00000018  F7FF      BL          DeviceData2UART?T  ; T=0x0001  (1)
 0000001A  FFF2      BL          DeviceData2UART?T  ; T=0x0001  (2)
  311:   }
 0000001C          L_26:
  313: }
 0000001C  BC08      POP         {R3}
 0000001E  4718      BX          R3
 00000020          ENDP ; 'USB_EndPoint2?T'


*** CODE SEGMENT '?PR?USB_EndPoint3?T?VCOMuser':
  323: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint3?T'


*** CODE SEGMENT '?PR?USB_EndPoint4?T?VCOMuser':
  332: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint4?T'


*** CODE SEGMENT '?PR?USB_EndPoint5?T?VCOMuser':
  339: void USB_EndPoint5 (DWORD event) {
 00000000  B500      PUSH        {LR}
 00000002  1C01      MOV         R1,R0 ; event
ARM COMPILER V2.31,  VCOMuser                                                              23/11/05  10:53:11  PAGE 18  

 00000004  ---- Variable 'event' assigned to Register 'R1' ----
  340:   switch (event) {
 00000004  1C08      MOV         R0,R1 ; event
 00000006  2802      CMP         R0,#0x2 ; event
 00000008  D005      BEQ         L_30  ; T=0x00000016
 0000000A  2803      CMP         R0,#0x3 ; event
 0000000C  D106      BNE         L_29  ; T=0x0000001C
  341:     case USB_EVT_IN:
 0000000E          L_31:
  342:       Data2Host1 = 1;
 0000000E  2101      MOV         R1,#0x1
 00000010  4800      LDR         R0,=Data2Host1 ; Data2Host1
 00000012  7001      STRB        R1,[R0,#0x0] ; Data2Host1
  343:       break;
 00000014  E002      B           L_29  ; T=0x0000001C
  344:     case USB_EVT_OUT:
 00000016          L_30:
  345:       DeviceData2UART( 1 );
 00000016  2001      MOV         R0,#0x1
 00000018  F7FF      BL          DeviceData2UART?T  ; T=0x0001  (1)
 0000001A  FFF2      BL          DeviceData2UART?T  ; T=0x0001  (2)
  347:   }
 0000001C          L_29:
  349: }
 0000001C  BC08      POP         {R3}
 0000001E  4718      BX          R3
 00000020          ENDP ; 'USB_EndPoint5?T'


*** CODE SEGMENT '?PR?USB_EndPoint6?T?VCOMuser':
  358: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint6?T'


*** CODE SEGMENT '?PR?USB_EndPoint7?T?VCOMuser':
  368: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint7?T'


*** CODE SEGMENT '?PR?USB_EndPoint8?T?VCOMuser':
  378: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint8?T'


*** CODE SEGMENT '?PR?USB_EndPoint9?T?VCOMuser':
  388: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint9?T'


*** CODE SEGMENT '?PR?USB_EndPoint10?T?VCOMuser':
  398: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint10?T'


*** CODE SEGMENT '?PR?USB_EndPoint11?T?VCOMuser':
  408: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint11?T'


*** CODE SEGMENT '?PR?USB_EndPoint12?T?VCOMuser':
  417: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint12?T'


*** CODE SEGMENT '?PR?USB_EndPoint13?T?VCOMuser':
  427: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint13?T'


*** CODE SEGMENT '?PR?USB_EndPoint14?T?VCOMuser':
  437: }
 00000000  4770      BX          R14
 00000002          ENDP ; 'USB_EndPoint14?T'


*** CODE SEGMENT '?PR?USB_EndPoint15?T?VCOMuser':
  447: }
 00000000  4770      BX          R14
ARM COMPILER V2.31,  VCOMuser                                                              23/11/05  10:53:11  PAGE 19  

 00000002          ENDP ; 'USB_EndPoint15?T'


*** CODE SEGMENT '?PR?init_serial?T?VCOMuser':
  458:   PINSEL0 = 0x00050005;        /* Enable RxD1 and TxD1, RxD0 and TxD0 */
 00000000  4800      LDR         R1,=0x50005
 00000002  4800      LDR         R0,=0xE002C000
 00000004  6001      STR         R1,[R0,#0x0]
  461:   U0LCR = 0x83;                /* 8 bits, no Parity, 1 Stop bit     */
 00000006  2183      MOV         R1,#0x83
 00000008  4800      LDR         R0,=0xE000C00C
 0000000A  7001      STRB        R1,[R0,#0x0]
  462:   U0DLL = 97;                  /* 9600 Baud Rate @ 15MHz VPB Clock  */
 0000000C  2161      MOV         R1,#0x61
 0000000E  4800      LDR         R0,=0xE000C000
 00000010  7001      STRB        R1,[R0,#0x0]
  463:   U0LCR = 0x03;                /* DLAB = 0                          */  
 00000012  2103      MOV         R1,#0x3
 00000014  4800      LDR         R0,=0xE000C00C
 00000016  7001      STRB        R1,[R0,#0x0]
  464:   U0FCR = 0x07;                /* Enable and reset TX and RX FIFO. */
 00000018  2107      MOV         R1,#0x7
 0000001A  4800      LDR         R0,=0xE000C008
 0000001C  7001      STRB        R1,[R0,#0x0]
  466:   U1LCR = 0x83;                /* 8 bits, no Parity, 1 Stop bit     */
 0000001E  2183      MOV         R1,#0x83
 00000020  4800      LDR         R0,=0xE001000C
 00000022  7001      STRB        R1,[R0,#0x0]
  467:   U1DLL = 97;                  /* 9600 Baud Rate @ 15MHz VPB Clock  */
 00000024  2161      MOV         R1,#0x61
 00000026  4800      LDR         R0,=0xE0010000
 00000028  7001      STRB        R1,[R0,#0x0]
  468:   U1LCR = 0x03;                /* DLAB = 0                          */
 0000002A  2103      MOV         R1,#0x3
 0000002C  4800      LDR         R0,=0xE001000C
 0000002E  7001      STRB        R1,[R0,#0x0]
  469:   U1FCR = 0x07;                /* Enable and reset TX and RX FIFO. */
 00000030  2107      MOV         R1,#0x7
 00000032  4800      LDR         R0,=0xE0010008
 00000034  7001      STRB        R1,[R0,#0x0]
  470: }
 00000036  4770      BX          R14
 00000038          ENDP ; 'init_serial?T'


*** CODE SEGMENT '?PR?putchar?T?VCOMuser':
  472: int putchar(BYTE portNum, int ch)  {     /* Write character to Serial Port    */
 00000000  ---- Variable 'ch' assigned to Register 'R1' ----
 00000000  1C02      MOV         R2,R0 ; portNum
 00000002  ---- Variable 'portNum' assigned to Register 'R2' ----
  474:   if ( portNum == 0 ) {
 00000002  1C10      MOV         R0,R2 ; portNum
 00000004  0600      LSL         R0,R0,#0x18 ; portNum
 00000006  0E00      LSR         R0,R0,#0x18
 00000008  2800      CMP         R0,#0x0
 0000000A  D115      BNE         L_32  ; T=0x00000038
  475:     if (ch == '\n')  {
 0000000C  1C08      MOV         R0,R1 ; ch
 0000000E  280A      CMP         R0,#0xA ; ch
 00000010  D107      BNE         L_41  ; T=0x00000022
  476:         while (!(U0LSR & 0x20));
 00000012          L_34:
 00000012  4800      LDR         R0,=0xE000C014

⌨️ 快捷键说明

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