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

📄 main.lst

📁 DSP通过双口RAM和ISP1581实现下位机的USB固件程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.06   MAIN                                                                  09/09/2005 13:57:30 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN Main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Main.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          
   2          #include "HAL.H"
   3          //#include "USBD12.H"
   4          #include "SMPro.H"
   5          //#include "USB110.H"
   6          #include "USB.H"
   7          #include "CHAP9.H"
   8          #include "VDOR.H"
   9          #include "Isp1581.h"
  10          #include "main.h"
  11          //#include "Hal4sys.h"
  12          #include "Iso.h"
  13          #include "dportram.h"
  14          
  15          GLOBE_VARIABLE globe_variable;
  16          ///////////////////////////////////
  17          // Data definition
  18          extern unsigned long lClockTicks;
  19          ZBOARDFLAGS bdata bZBoardFlags;
  20          extern CONTROL_XFER ControlData;
  21          //extern CODE_DATA idata CodeData;
  22          IO_REQUEST idata ioRequest;
  23          
  24          //bit uart_flag=0;
  25          //unsigned char uart_received=0;
  26          //extern unsigned int dackpulse;
  27          //extern bit dmadackbit;
  28          
  29          bit writeramflag=0;
  30          unsigned char writeramlen=0;
  31          extern unsigned char idata GenEpBuf[EP1_PACKET_SIZE];
  32          
  33          extern unsigned char idata last_key;
  34          
  35          /*unsigned char xdata value1 _at_ 0x0000;
  36          unsigned char xdata value2 _at_ 0x0100;
  37          unsigned char xdata value3 _at_ 0x0200;
  38          unsigned char xdata value4 _at_ 0x0300;
  39          unsigned char xdata value5 _at_ 0x0400;
  40          unsigned char xdata value6 _at_ 0x0500;
  41          unsigned char xdata value7 _at_ 0x0600;
  42          unsigned char xdata value8 _at_ 0x0700;
  43          unsigned char xdata value9 _at_ 0x0800;
  44          unsigned char xdata value10 _at_ 0x0900;
  45          unsigned char xdata value11 _at_ 0x0a00;
  46          unsigned char xdata value12 _at_ 0x0b00;
  47          unsigned char xdata value13 _at_ 0x0c00;
  48          unsigned char xdata value14 _at_ 0x0d00;
  49          unsigned char xdata value15 _at_ 0x0e00;
  50          unsigned char xdata value16 _at_ 0x0f00;
  51          */
  52          
  53          void Init_Timer0(void)
  54          {
  55   1              TMOD &= 0xF0;                   /* clear Timer 0      */
C51 COMPILER V7.06   MAIN                                                                  09/09/2005 13:57:30 PAGE 2   

  56   1              TMOD  |= 0x1;
  57   1              TL0 = 0x0;                      /* value set by user  */
  58   1              TH0 = 0x0;                      /* value set by user  */
  59   1              ET0 = 1;                        /* IE.1*/
  60   1              TR0 = 1;                        /* TCON.4 start timer */
  61   1      //      PT0 = 1;
  62   1      }
  63          
  64          /*void Init_Timer1(void)
  65          {
  66                  TMOD &= 0x0f;                   //* clear Timer 0      
  67                  TMOD  |= 0x020;
  68                  TL1 = 0xf3;                     //* value set by user  
  69                  TH1 = 0xf3;                     //* value set by user  
  70                  ET1 = 0;                        //* IE.1
  71                  TR1 = 1;                        //* TCON.4 start timer 
  72          }
  73          void Init_uart(void)
  74          {
  75                  SCON=0X50;
  76                  PCON=0X00;
  77                  ES=1;             //*Enable uart interrupt
  78          }
  79          */
  80          void Init_Port()
  81          {
  82   1              P0 = 0xFF;
  83   1              P1 = 0xFF;
  84   1              P2 = 0xFF;
  85   1              P3 = 0xFF;
  86   1      }
  87          /*void UARTSEND(char num)     //
  88          {
  89           EA=0;
  90           SBUF=num;
  91           while(TI==0);
  92           TI=0;
  93           EA=1;         
  94          }
  95          /*void UART(void) interrupt 4 
  96          {
  97                  EA=0; 
  98          if(RI==1)
  99            {uart_flag=1;
 100            uart_received=SBUF;
 101            UARTSEND(uart_received);
 102            RI=0;
 103            EA=1;
 104             }
 105            else
 106            {TI=0;
 107             EA=1;
 108             }
 109           }
 110          */
 111          /*void init_fifo()
 112          {
 113          unsigned int i=0;
 114          for(i=0;i<64;i++)
 115          {
 116          value1=0;
 117          value2=0;
C51 COMPILER V7.06   MAIN                                                                  09/09/2005 13:57:30 PAGE 3   

 118          value3=0;
 119          value4=0;
 120          value5=0;
 121          value6=0;
 122          value7=0;
 123          value8=0;
 124          value9=0;
 125          value10=0;
 126          value11=0;
 127          value12=0;
 128          value13=0;
 129          value14=0;
 130          value15=0;
 131          value16=0;
 132          }
 133          }*/
 134          /*T0=1;
 135          for (i=0;i<1024;i++)
 136          {
 137          T0=0;
 138          T0=1;
 139          }*/
 140          
 141          /*------------------------------------------------
 142          The main C function.  Program execution starts
 143          here after stack initialization.
 144          ------------------------------------------------*/
 145          void main (void)
 146          {
 147   1      //unsigned int zloop1,zloop2;
 148   1      //unsigned char rloop;
 149   1      unsigned short temp2;
 150   1              ////////////////////////////////////////////////
 151   1              bZBoardFlags.bits.At_IRQL1 =1;
 152   1              ////////////////////////////////////////////////
 153   1              Init_Timer0();
 154   1              Init_Port();
 155   1              init_ram();
 156   1      //Init_Timer1();//5.21
 157   1      //Init_uart();
 158   1       //   UARTSEND(0X55);
 159   1              EA=1;
 160   1              T1=1;//FIFO's w\ and r\ must remain high during reset
 161   1          WR=1;
 162   1      //      init_fifo();
 163   1              temp2=ISP1581_ReadChipID();  //1581
 164   1              ////////////////////////////////////////
 165   1              last_key=0x3;
 166   1      
 167   1              LED_STATUS=1;
 168   1              MCU_LED0 = 0;
 169   1              MCU_LED1 = 0;
 170   1              /////////////////////////////////////////////////////
 171   1              bZBoardFlags.bits.At_IRQL1 =0;
 172   1              /////////////////////////////////////////////////////
 173   1              ISP1581_ResetDevice();
 174   1              EX0=1;
 175   1              
 176   1              Device_Initiate();
 177   1              ENABLE_INTERRUPTS;
 178   1      
 179   1              /* Main program loop */
C51 COMPILER V7.06   MAIN                                                                  09/09/2005 13:57:30 PAGE 4   

 180   1              while(TRUE)
 181   1              {
 182   2                      
 183   2                      if (bZBoardFlags.bits.bTimer){
 184   3                              DISABLE_INTERRUPTS;
 185   3                              bZBoardFlags.bits.bTimer = 0;
 186   3                              ENABLE_INTERRUPTS;
 187   3      
 188   3                              if(bZBoardFlags.bits.bConfiguration)
 189   3                                      check_key_LED();
 190   3                      }
 191   2        /*******************************************************************************************************
             -****/
 192   2      /*********************************************************************************************************
             -**/
 193   2      //write zhe received data to d-port ram
 194   2                      //7.25
 195   2      /*********************************************************************************************************
             -**/
 196   2                      if (writeramflag==1)
 197   2                      {
 198   3                      writeramflag=0;
 199   3          //for(rloop=0;rloop<writeramlen;rloop++)
 200   3          //GenEpBuf[rloop]+=1;
 201   3            WriteRam(writeramlen,GenEpBuf);
 202   3                      }
 203   2                      
 204   2      /*              if(dmadackbit==1)
 205   2      {
 206   2      dmadackbit=0;
 207   2      for(zloop2=0;zloop2<dackpulse;zloop2+=zlooponce)
 208   2                      {
 209   2                       while(dmagate==0);
 210   2      
 211   2                      for(zloop1=0;zloop1<zlooponce;zloop1++)
 212   2                       {
 213   2                       if(dmagate==1)
 214   2                       {
 215   2                       T1=0;
 216   2                  T1=1;
 217   2                              }
 218   2                              else
 219   2                              zloop1--;
 220   2                       }
 221   2                       
 222   2                      }
 223   2      
 224   2      }       */                              
 225   2                      if (bZBoardFlags.bits.bBus_Reset)
 226   2                      {
 227   3                              DISABLE_INTERRUPTS;
 228   3                              bZBoardFlags.bits.bBus_Reset = 0;
 229   3                              ENABLE_INTERRUPTS;
 230   3                              Isr_BusReset();
 231   3                      } // if bus reset
 232   2                      if (bZBoardFlags.bits.DCP_state == USBFSM4DCP_REQUESTPROC && bZBoardFlags.bits.CONTROL_HANDLE_DONE == 1 
             -)
 233   2                      {
 234   3                              RaiseIRQL();
 235   3                              bZBoardFlags.bits.CONTROL_HANDLE_DONE = 0;
 236   3                              DeviceRequest_Handler();

⌨️ 快捷键说明

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