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

📄 intellisense.lst

📁 在ATMEL芯片下的USB底层程序的开发
💻 LST
📖 第 1 页 / 共 5 页
字号:
 00000004  68C0      LDR         R0,[R0,#0xC]
 00000006  2800      CMP         R0,#0x0
 00000008  D101      BNE         L_4  ; T=0x0000000E
 0000000A  2001      MOV         R0,#0x1
 0000000C  E000      B           L_5  ; T=0x00000010
 0000000E          L_4:
 0000000E  2000      MOV         R0,#0x0
 00000010          L_5:
  228: }
 00000010  4770      BX          R14
 00000012          ENDP ; 'AT91F_PDC_IsTxEmpty?T'


*** CODE SEGMENT '?PR?AT91F_PDC_IsNextTxEmpty?T?intellisense':
  234: __inline int AT91F_PDC_IsNextTxEmpty ( // \return return 1 if transfer is complete
 00000000  1C01      MOV         R1,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R1' ----
  237:     return !(pPDC->PDC_TNCR);
 00000002  1C08      MOV         R0,R1 ; pPDC
 00000004  69C0      LDR         R0,[R0,#0x1C]
 00000006  2800      CMP         R0,#0x0
 00000008  D101      BNE         L_7  ; T=0x0000000E
 0000000A  2001      MOV         R0,#0x1
 0000000C  E000      B           L_8  ; T=0x00000010
 0000000E          L_7:
 0000000E  2000      MOV         R0,#0x0
 00000010          L_8:
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 6   

  238: }
 00000010  4770      BX          R14
 00000012          ENDP ; 'AT91F_PDC_IsNextTxEmpty?T'


*** CODE SEGMENT '?PR?AT91F_PDC_IsRxEmpty?T?intellisense':
  244: __inline int AT91F_PDC_IsRxEmpty ( // \return return 1 if transfer is complete
 00000000  1C01      MOV         R1,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R1' ----
  247:     return !(pPDC->PDC_RCR);
 00000002  1C08      MOV         R0,R1 ; pPDC
 00000004  6840      LDR         R0,[R0,#0x4]
 00000006  2800      CMP         R0,#0x0
 00000008  D101      BNE         L_10  ; T=0x0000000E
 0000000A  2001      MOV         R0,#0x1
 0000000C  E000      B           L_11  ; T=0x00000010
 0000000E          L_10:
 0000000E  2000      MOV         R0,#0x0
 00000010          L_11:
  248: }
 00000010  4770      BX          R14
 00000012          ENDP ; 'AT91F_PDC_IsRxEmpty?T'


*** CODE SEGMENT '?PR?AT91F_PDC_IsNextRxEmpty?T?intellisense':
  254: __inline int AT91F_PDC_IsNextRxEmpty ( // \return return 1 if transfer is complete
 00000000  1C01      MOV         R1,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R1' ----
  257:     return !(pPDC->PDC_RNCR);
 00000002  1C08      MOV         R0,R1 ; pPDC
 00000004  6940      LDR         R0,[R0,#0x14]
 00000006  2800      CMP         R0,#0x0
 00000008  D101      BNE         L_13  ; T=0x0000000E
 0000000A  2001      MOV         R0,#0x1
 0000000C  E000      B           L_14  ; T=0x00000010
 0000000E          L_13:
 0000000E  2000      MOV         R0,#0x0
 00000010          L_14:
  258: }
 00000010  4770      BX          R14
 00000012          ENDP ; 'AT91F_PDC_IsNextRxEmpty?T'


*** CODE SEGMENT '?PR?AT91F_PDC_Open?T?intellisense':
  264: __inline void AT91F_PDC_Open (
 00000000  B510      PUSH        {R4,LR}
 00000002  1C04      MOV         R4,R0 ; pPDC
 00000004  ---- Variable 'pPDC' assigned to Register 'R4' ----
  268:     AT91F_PDC_DisableRx(pPDC);
 00000004  1C20      MOV         R0,R4 ; pPDC
 00000006  F7FF      BL          AT91F_PDC_DisableRx?T  ; T=0x0001  (1)
 00000008  FFFB      BL          AT91F_PDC_DisableRx?T  ; T=0x0001  (2)
  269:     AT91F_PDC_DisableTx(pPDC);
 0000000A  1C20      MOV         R0,R4 ; pPDC
 0000000C  F7FF      BL          AT91F_PDC_DisableTx?T  ; T=0x0001  (1)
 0000000E  FFF8      BL          AT91F_PDC_DisableTx?T  ; T=0x0001  (2)
  272:     AT91F_PDC_SetNextTx(pPDC, (char *) 0, 0);
 00000010  1C20      MOV         R0,R4 ; pPDC
 00000012  2100      MOV         R1,#0x0
 00000014  2200      MOV         R2,#0x0
 00000016  F7FF      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (1)
 00000018  FFF3      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (2)
  273:     AT91F_PDC_SetNextRx(pPDC, (char *) 0, 0);
 0000001A  1C20      MOV         R0,R4 ; pPDC
 0000001C  2100      MOV         R1,#0x0
 0000001E  2200      MOV         R2,#0x0
 00000020  F7FF      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (1)
 00000022  FFEE      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (2)
  274:     AT91F_PDC_SetTx(pPDC, (char *) 0, 0);
 00000024  1C20      MOV         R0,R4 ; pPDC
 00000026  2100      MOV         R1,#0x0
 00000028  2200      MOV         R2,#0x0
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 7   

 0000002A  F7FF      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (1)
 0000002C  FFE9      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (2)
  275:     AT91F_PDC_SetRx(pPDC, (char *) 0, 0);
 0000002E  1C20      MOV         R0,R4 ; pPDC
 00000030  2100      MOV         R1,#0x0
 00000032  2200      MOV         R2,#0x0
 00000034  F7FF      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (1)
 00000036  FFE4      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (2)
  278:     AT91F_PDC_EnableRx(pPDC);
 00000038  1C20      MOV         R0,R4 ; pPDC
 0000003A  F7FF      BL          AT91F_PDC_EnableRx?T  ; T=0x0001  (1)
 0000003C  FFE1      BL          AT91F_PDC_EnableRx?T  ; T=0x0001  (2)
  279:     AT91F_PDC_EnableTx(pPDC);
 0000003E  1C20      MOV         R0,R4 ; pPDC
 00000040  F7FF      BL          AT91F_PDC_EnableTx?T  ; T=0x0001  (1)
 00000042  FFDE      BL          AT91F_PDC_EnableTx?T  ; T=0x0001  (2)
  280: }
 00000044  BC10      POP         {R4}
 00000046  BC08      POP         {R3}
 00000048  4718      BX          R3
 0000004A          ENDP ; 'AT91F_PDC_Open?T'


*** CODE SEGMENT '?PR?AT91F_PDC_Close?T?intellisense':
  286: __inline void AT91F_PDC_Close (
 00000000  B510      PUSH        {R4,LR}
 00000002  1C04      MOV         R4,R0 ; pPDC
 00000004  ---- Variable 'pPDC' assigned to Register 'R4' ----
  290:     AT91F_PDC_DisableRx(pPDC);
 00000004  1C20      MOV         R0,R4 ; pPDC
 00000006  F7FF      BL          AT91F_PDC_DisableRx?T  ; T=0x0001  (1)
 00000008  FFFB      BL          AT91F_PDC_DisableRx?T  ; T=0x0001  (2)
  291:     AT91F_PDC_DisableTx(pPDC);
 0000000A  1C20      MOV         R0,R4 ; pPDC
 0000000C  F7FF      BL          AT91F_PDC_DisableTx?T  ; T=0x0001  (1)
 0000000E  FFF8      BL          AT91F_PDC_DisableTx?T  ; T=0x0001  (2)
  294:     AT91F_PDC_SetNextTx(pPDC, (char *) 0, 0);
 00000010  1C20      MOV         R0,R4 ; pPDC
 00000012  2100      MOV         R1,#0x0
 00000014  2200      MOV         R2,#0x0
 00000016  F7FF      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (1)
 00000018  FFF3      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (2)
  295:     AT91F_PDC_SetNextRx(pPDC, (char *) 0, 0);
 0000001A  1C20      MOV         R0,R4 ; pPDC
 0000001C  2100      MOV         R1,#0x0
 0000001E  2200      MOV         R2,#0x0
 00000020  F7FF      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (1)
 00000022  FFEE      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (2)
  296:     AT91F_PDC_SetTx(pPDC, (char *) 0, 0);
 00000024  1C20      MOV         R0,R4 ; pPDC
 00000026  2100      MOV         R1,#0x0
 00000028  2200      MOV         R2,#0x0
 0000002A  F7FF      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (1)
 0000002C  FFE9      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (2)
  297:     AT91F_PDC_SetRx(pPDC, (char *) 0, 0);
 0000002E  1C20      MOV         R0,R4 ; pPDC
 00000030  2100      MOV         R1,#0x0
 00000032  2200      MOV         R2,#0x0
 00000034  F7FF      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (1)
 00000036  FFE4      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (2)
  299: }
 00000038  BC10      POP         {R4}
 0000003A  BC08      POP         {R3}
 0000003C  4718      BX          R3
 0000003E          ENDP ; 'AT91F_PDC_Close?T'


*** CODE SEGMENT '?PR?AT91F_PDC_SendFrame?T?intellisense':
  305: __inline unsigned int AT91F_PDC_SendFrame(
 00000000  B5F0      PUSH        {R4-R7,LR}
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 8   

 00000002  1C1F      MOV         R7,R3 ; pNextBuffer
 00000004  ---- Variable 'pNextBuffer' assigned to Register 'R7' ----
 00000004  1C14      MOV         R4,R2 ; szBuffer
 00000006  ---- Variable 'szBuffer' assigned to Register 'R4' ----
 00000006  1C0D      MOV         R5,R1 ; pBuffer
 00000008  ---- Variable 'pBuffer' assigned to Register 'R5' ----
 00000008  1C06      MOV         R6,R0 ; pPDC
 0000000A  ---- Variable 'pPDC' assigned to Register 'R6' ----
  312:     if (AT91F_PDC_IsTxEmpty(pPDC)) {
 0000000A  1C30      MOV         R0,R6 ; pPDC
 0000000C  F7FF      BL          AT91F_PDC_IsTxEmpty?T  ; T=0x0001  (1)
 0000000E  FFF8      BL          AT91F_PDC_IsTxEmpty?T  ; T=0x0001  (2)
 00000010  2800      CMP         R0,#0x0 ; AT91F_PDC_IsTxEmpty?T
 00000012  D00B      BEQ         L_15  ; T=0x0000002C
  314:         AT91F_PDC_SetTx(pPDC, pBuffer, szBuffer);
 00000014  1C30      MOV         R0,R6 ; pPDC
 00000016  1C29      MOV         R1,R5 ; pBuffer
 00000018  1C22      MOV         R2,R4 ; szBuffer
 0000001A  F7FF      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (1)
 0000001C  FFF1      BL          AT91F_PDC_SetTx?T  ; T=0x0001  (2)
  315:         AT91F_PDC_SetNextTx(pPDC, pNextBuffer, szNextBuffer);
 0000001E  1C30      MOV         R0,R6 ; pPDC
 00000020  1C39      MOV         R1,R7 ; pNextBuffer
 00000022  9A00      LDR         R2,[R13,#0x0] ; szNextBuffer
 00000024  F7FF      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (1)
 00000026  FFEC      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (2)
  316:         return 2;
 00000028  2002      MOV         R0,#0x2
 0000002A  E00C      B           L_16  ; T=0x00000046
  317:     }
 0000002C          L_15:
  318:     else if (AT91F_PDC_IsNextTxEmpty(pPDC)) {
 0000002C  1C30      MOV         R0,R6 ; pPDC
 0000002E  F7FF      BL          AT91F_PDC_IsNextTxEmpty?T  ; T=0x0001  (1)
 00000030  FFE7      BL          AT91F_PDC_IsNextTxEmpty?T  ; T=0x0001  (2)
 00000032  2800      CMP         R0,#0x0 ; AT91F_PDC_IsNextTxEmpty?T
 00000034  D006      BEQ         L_18  ; T=0x00000044
  320:         AT91F_PDC_SetNextTx(pPDC, pBuffer, szBuffer);
 00000036  1C30      MOV         R0,R6 ; pPDC
 00000038  1C29      MOV         R1,R5 ; pBuffer
 0000003A  1C22      MOV         R2,R4 ; szBuffer
 0000003C  F7FF      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (1)
 0000003E  FFE0      BL          AT91F_PDC_SetNextTx?T  ; T=0x0001  (2)
  321:         return 1;
 00000040  2001      MOV         R0,#0x1
 00000042  E000      B           L_16  ; T=0x00000046
  322:     }
 00000044          L_18:
  325:         return 0;
 00000044  2000      MOV         R0,#0x0
  327: }
 00000046          L_16:
 00000046  BCF0      POP         {R4-R7}
 00000048  BC08      POP         {R3}
 0000004A  4718      BX          R3
 0000004C          ENDP ; 'AT91F_PDC_SendFrame?T'


*** CODE SEGMENT '?PR?AT91F_PDC_ReceiveFrame?T?intellisense':
  333: __inline unsigned int AT91F_PDC_ReceiveFrame (
 00000000  B5F0      PUSH        {R4-R7,LR}
 00000002  1C1F      MOV         R7,R3 ; pNextBuffer
 00000004  ---- Variable 'pNextBuffer' assigned to Register 'R7' ----
 00000004  1C14      MOV         R4,R2 ; szBuffer
 00000006  ---- Variable 'szBuffer' assigned to Register 'R4' ----
 00000006  1C0D      MOV         R5,R1 ; pBuffer
 00000008  ---- Variable 'pBuffer' assigned to Register 'R5' ----
 00000008  1C06      MOV         R6,R0 ; pPDC
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 9   

 0000000A  ---- Variable 'pPDC' assigned to Register 'R6' ----
  340:     if (AT91F_PDC_IsRxEmpty(pPDC)) {
 0000000A  1C30      MOV         R0,R6 ; pPDC
 0000000C  F7FF      BL          AT91F_PDC_IsRxEmpty?T  ; T=0x0001  (1)
 0000000E  FFF8      BL          AT91F_PDC_IsRxEmpty?T  ; T=0x0001  (2)
 00000010  2800      CMP         R0,#0x0 ; AT91F_PDC_IsRxEmpty?T
 00000012  D00B      BEQ         L_20  ; T=0x0000002C
  342:         AT91F_PDC_SetRx(pPDC, pBuffer, szBuffer);
 00000014  1C30      MOV         R0,R6 ; pPDC
 00000016  1C29      MOV         R1,R5 ; pBuffer
 00000018  1C22      MOV         R2,R4 ; szBuffer
 0000001A  F7FF      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (1)
 0000001C  FFF1      BL          AT91F_PDC_SetRx?T  ; T=0x0001  (2)
  343:         AT91F_PDC_SetNextRx(pPDC, pNextBuffer, szNextBuffer);
 0000001E  1C30      MOV         R0,R6 ; pPDC
 00000020  1C39      MOV         R1,R7 ; pNextBuffer
 00000022  9A00      LDR         R2,[R13,#0x0] ; szNextBuffer
 00000024  F7FF      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (1)
 00000026  FFEC      BL          AT91F_PDC_SetNextRx?T  ; T=0x0001  (2)
  344:         return 2;
 00000028  2002      MOV         R0,#0x2
 0000002A  E00C      B           L_21  ; T=0x00000046
  345:     }
 0000002C          L_20:
  346:     else if (AT91F_PDC_IsNextRxEmpty(pPDC)) {
 0000002C  1C30      MOV         R0,R6 ; pPDC
 0000002E  F7FF      BL          AT91F_PDC_IsNextRxEmpty?T  ; T=0x0001  (1)
 00000030  FFE7      BL          AT91F_PDC_IsNextRxEmpty?T  ; T=0x0001  (2)
 00000032  2800      CMP         R0,#0x0 ; AT91F_PDC_IsNextRxEmpty?T
 00000034  D006      BEQ         L_23  ; T=0x00000044
  348:         AT91F_PDC_SetNextRx(pPDC, pBuffer, szBuffer);
 00000036  1C30      MOV         R0,R6 ; pPDC
 00000038  1C29      MOV         R1,R5 ; pBuffer

⌨️ 快捷键说明

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