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

📄 intellisense.lst

📁 在ATMEL芯片下的USB底层程序的开发
💻 LST
📖 第 1 页 / 共 5 页
字号:
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 1   


ARM COMPILER V2.53, COMPILATION OF MODULE intellisense
OBJECT MODULE PLACED IN intellisense.OBJ
COMPILER INVOKED BY: D:\学习\ARM\BIN\CA.exe intellisense.c THUMB DEBUG PRINT(.\LST\INTELLISENSE.LST) TABS(4) 

stmt  level    source

    1          /*----------------------------------------------------------------------------
    2                  For Intellisence
    3           *---------------------------------------------------------------------------*/
    4          
    5          #include <AT91SAM7S64.H>                    /* AT91SAM7S64 definitions */
    6          #include <lib_AT91SAM7S64.H>
    7          #include "Board.h"
    8          #include "type.h"
    9          #include "usb.h"
   10          #include "usbcfg.h"
   11          #include "usbhw.h"
   12          #include "usbcore.h"
   13          
   14          AT91S_PIO * pPIO = AT91C_BASE_PIOA;         /* Global Pointer to PIO */
   15          BYTE    data;
   16          /* Main Program */
   17          
   18          int main (void) {
   19   1        int timecount;                                                 
   20   1        AT91C_BASE_PMC->PMC_PCER = (1 << AT91C_ID_PIOA);  /* Enable Clock for PIO */
   21   1        *AT91C_PIOA_PER=0x0000000F;               /*PIOA0-2作为I/O使用*/
   22   1        *AT91C_PIOA_OER=0x0000000F;               /*PIOA0-2输出使能 */
   23   1        pPIO->PIO_PER  = LED_MASK;                /* Enable PIO for LED1..4  */
   24   1        pPIO->PIO_OER  = LED_MASK;                /* LED1..4 are Outputs     */
   25   1        pPIO->PIO_SODR = LED_MASK;                /* Turn off LED's ("1")    */
   26   1        data=0;
   27   1      
   28   1        USB_Init();                               /* USB Initialization */
   29   1        USB_Connect(TRUE);                        /* USB Connect */
   30   1      
   31   1        while (1)                                /* Loop forever */
   32   1        {
   33   2          if(data==49)
   34   2          {   
   35   3              *AT91C_PIOA_CODR=0x00000001;                        /*开led1*/
   36   3              for(timecount=0;timecount<6000000;timecount++);
   37   3              *AT91C_PIOA_SODR=0x00000001;                        /*关led1*/      
   38   3              USB_WriteEP (1, &data, 1);
   39   3              data=0;
   40   3          }
   41   2      
   42   2          if(data==50)
   43   2          {
   44   3              *AT91C_PIOA_CODR=0x00000002;                         /*开led2*/
   45   3              for(timecount=0;timecount<6000000;timecount++);
   46   3              *AT91C_PIOA_SODR=0x00000002;
   47   3              USB_WriteEP (1, &data, 1);                          /*关led2*/
   48   3              data=0;
   49   3          }
   50   2              if(data==51)
   51   2          {
   52   3              *AT91C_PIOA_CODR=0x00000004;                        /*开led3*/
   53   3              for(timecount=0;timecount<6000000;timecount++);
   54   3              *AT91C_PIOA_SODR=0x00000004;
   55   3              USB_WriteEP (1, &data, 1);                          /*关led3*/
   56   3              data=0;
   57   3          }
   58   2        }
   59   1        
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 2   

   60   1      }
   61          
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE



*** EXTERNALS:
 EXTERN CODE16 (USB_Init?T)
 EXTERN CODE16 (USB_Connect?T)
 EXTERN CODE16 (USB_WriteEP?T)
 EXTERN CODE16 (?C?UDIV?T)
 EXTERN NUMBER (__startup)



*** PUBLICS:
 PUBLIC         main
 PUBLIC         pPIO
 PUBLIC         data



*** DATA SEGMENT '?DT0?intellisense':
 00000000          pPIO:
 00000000           BEGIN_INIT
 00000000  FFFFF400  DD          0xFFFFF400
 00000004           END_INIT
 00000004          data:
 00000004            DS          1



*** CODE SEGMENT '?PR?AT91F_MC_EFC_GetModeReg?T?intellisense':
   66: __inline unsigned int AT91F_MC_EFC_GetModeReg(
 00000000  1C01      MOV         R1,R0 ; pMC
 00000002  ---- Variable 'pMC' assigned to Register 'R1' ----
   69:     return pMC->MC_FMR;
 00000002  1C08      MOV         R0,R1 ; pMC
 00000004  6E00      LDR         R0,[R0,#0x60]
   70: }
 00000006  4770      BX          R14
 00000008          ENDP ; 'AT91F_MC_EFC_GetModeReg?T'


*** CODE SEGMENT '?PR?AT91F_MC_EFC_GetStatus?T?intellisense':
   97: __inline unsigned int AT91F_MC_EFC_GetStatus(
 00000000  1C01      MOV         R1,R0 ; pMC
 00000002  ---- Variable 'pMC' assigned to Register 'R1' ----
  100:     return pMC->MC_FSR;
 00000002  1C08      MOV         R0,R1 ; pMC
 00000004  6E80      LDR         R0,[R0,#0x68]
  101: }
 00000006  4770      BX          R14
 00000008          ENDP ; 'AT91F_MC_EFC_GetStatus?T'


*** CODE SEGMENT '?PR?AT91F_PDC_SetNextRx?T?intellisense':
  132: __inline void AT91F_PDC_SetNextRx (
 00000000  B410      PUSH        {R4}
 00000002  ---- Variable 'bytes' assigned to Register 'R2' ----
 00000002  1C0C      MOV         R4,R1 ; address
 00000004  ---- Variable 'address' assigned to Register 'R4' ----
 00000004  1C03      MOV         R3,R0 ; pPDC
 00000006  ---- Variable 'pPDC' assigned to Register 'R3' ----
  137:     pPDC->PDC_RNPR = (unsigned int) address;
 00000006  1C21      MOV         R1,R4 ; address
 00000008  1C18      MOV         R0,R3 ; pPDC
 0000000A  6101      STR         R1,[R0,#0x10]
  138:     pPDC->PDC_RNCR = bytes;
 0000000C  1C11      MOV         R1,R2 ; bytes
 0000000E  1C18      MOV         R0,R3 ; pPDC
 00000010  6141      STR         R1,[R0,#0x14]
  139: }
 00000012  BC10      POP         {R4}
 00000014  4770      BX          R14
 00000016          ENDP ; 'AT91F_PDC_SetNextRx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_SetNextTx?T?intellisense':
  145: __inline void AT91F_PDC_SetNextTx (
 00000000  B410      PUSH        {R4}
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 4   

 00000002  ---- Variable 'bytes' assigned to Register 'R2' ----
 00000002  1C0C      MOV         R4,R1 ; address
 00000004  ---- Variable 'address' assigned to Register 'R4' ----
 00000004  1C03      MOV         R3,R0 ; pPDC
 00000006  ---- Variable 'pPDC' assigned to Register 'R3' ----
  150:     pPDC->PDC_TNPR = (unsigned int) address;
 00000006  1C21      MOV         R1,R4 ; address
 00000008  1C18      MOV         R0,R3 ; pPDC
 0000000A  6181      STR         R1,[R0,#0x18]
  151:     pPDC->PDC_TNCR = bytes;
 0000000C  1C11      MOV         R1,R2 ; bytes
 0000000E  1C18      MOV         R0,R3 ; pPDC
 00000010  61C1      STR         R1,[R0,#0x1C]
  152: }
 00000012  BC10      POP         {R4}
 00000014  4770      BX          R14
 00000016          ENDP ; 'AT91F_PDC_SetNextTx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_SetRx?T?intellisense':
  158: __inline void AT91F_PDC_SetRx (
 00000000  B410      PUSH        {R4}
 00000002  ---- Variable 'bytes' assigned to Register 'R2' ----
 00000002  1C0C      MOV         R4,R1 ; address
 00000004  ---- Variable 'address' assigned to Register 'R4' ----
 00000004  1C03      MOV         R3,R0 ; pPDC
 00000006  ---- Variable 'pPDC' assigned to Register 'R3' ----
  163:     pPDC->PDC_RPR = (unsigned int) address;
 00000006  1C21      MOV         R1,R4 ; address
 00000008  1C18      MOV         R0,R3 ; pPDC
 0000000A  6001      STR         R1,[R0,#0x0] ; pPDC
  164:     pPDC->PDC_RCR = bytes;
 0000000C  1C11      MOV         R1,R2 ; bytes
 0000000E  1C18      MOV         R0,R3 ; pPDC
 00000010  6041      STR         R1,[R0,#0x4]
  165: }
 00000012  BC10      POP         {R4}
 00000014  4770      BX          R14
 00000016          ENDP ; 'AT91F_PDC_SetRx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_SetTx?T?intellisense':
  171: __inline void AT91F_PDC_SetTx (
 00000000  B410      PUSH        {R4}
 00000002  ---- Variable 'bytes' assigned to Register 'R2' ----
 00000002  1C0C      MOV         R4,R1 ; address
 00000004  ---- Variable 'address' assigned to Register 'R4' ----
 00000004  1C03      MOV         R3,R0 ; pPDC
 00000006  ---- Variable 'pPDC' assigned to Register 'R3' ----
  176:     pPDC->PDC_TPR = (unsigned int) address;
 00000006  1C21      MOV         R1,R4 ; address
 00000008  1C18      MOV         R0,R3 ; pPDC
 0000000A  6081      STR         R1,[R0,#0x8]
  177:     pPDC->PDC_TCR = bytes;
 0000000C  1C11      MOV         R1,R2 ; bytes
 0000000E  1C18      MOV         R0,R3 ; pPDC
 00000010  60C1      STR         R1,[R0,#0xC]
  178: }
 00000012  BC10      POP         {R4}
 00000014  4770      BX          R14
 00000016          ENDP ; 'AT91F_PDC_SetTx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_EnableTx?T?intellisense':
  184: __inline void AT91F_PDC_EnableTx (
 00000000  1C02      MOV         R2,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R2' ----
  187:     pPDC->PDC_PTCR = AT91C_PDC_TXTEN;
 00000002  4940      LDR         R1,=0x100
 00000004  1C10      MOV         R0,R2 ; pPDC
 00000006  6201      STR         R1,[R0,#0x20]
  188: }
ARM COMPILER V2.53,  intellisense                                                          31/10/07  15:43:15  PAGE 5   

 00000008  4770      BX          R14
 0000000A          ENDP ; 'AT91F_PDC_EnableTx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_EnableRx?T?intellisense':
  194: __inline void AT91F_PDC_EnableRx (
 00000000  1C02      MOV         R2,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R2' ----
  197:     pPDC->PDC_PTCR = AT91C_PDC_RXTEN;
 00000002  2101      MOV         R1,#0x1
 00000004  1C10      MOV         R0,R2 ; pPDC
 00000006  6201      STR         R1,[R0,#0x20]
  198: }
 00000008  4770      BX          R14
 0000000A          ENDP ; 'AT91F_PDC_EnableRx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_DisableTx?T?intellisense':
  204: __inline void AT91F_PDC_DisableTx (
 00000000  1C02      MOV         R2,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R2' ----
  207:     pPDC->PDC_PTCR = AT91C_PDC_TXTDIS;
 00000002  4980      LDR         R1,=0x200
 00000004  1C10      MOV         R0,R2 ; pPDC
 00000006  6201      STR         R1,[R0,#0x20]
  208: }
 00000008  4770      BX          R14
 0000000A          ENDP ; 'AT91F_PDC_DisableTx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_DisableRx?T?intellisense':
  214: __inline void AT91F_PDC_DisableRx (
 00000000  1C02      MOV         R2,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R2' ----
  217:     pPDC->PDC_PTCR = AT91C_PDC_RXTDIS;
 00000002  2102      MOV         R1,#0x2
 00000004  1C10      MOV         R0,R2 ; pPDC
 00000006  6201      STR         R1,[R0,#0x20]
  218: }
 00000008  4770      BX          R14
 0000000A          ENDP ; 'AT91F_PDC_DisableRx?T'


*** CODE SEGMENT '?PR?AT91F_PDC_IsTxEmpty?T?intellisense':
  224: __inline int AT91F_PDC_IsTxEmpty ( // \return return 1 if transfer is complete
 00000000  1C01      MOV         R1,R0 ; pPDC
 00000002  ---- Variable 'pPDC' assigned to Register 'R1' ----
  227:     return !(pPDC->PDC_TCR);
 00000002  1C08      MOV         R0,R1 ; pPDC

⌨️ 快捷键说明

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