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

📄 aplif.lst

📁 Falsh 读写的demo
💻 LST
字号:
C51 COMPILER V7.50   APLIF                                                                 04/17/2007 10:39:21 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE APLIF
OBJECT MODULE PLACED IN .\Output\Aplif.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Aplif.c LARGE OPTIMIZE(SIZE) BROWSE INCDIR(.\Include) DEBUG OBJECTEXTEND PR
                    -INT(.\Output\Aplif.lst) OBJECT(.\Output\Aplif.obj)

line level    source

   1          /*
   2          *********************************************************************************************************
   3          * File     : Aplif.C
   4          * Contents :
   5          *
   6          * $Date    : 09/18/06    Kimi    v0.1
   7          * $Date    : 10/18/06    Kimi    v0.2
   8          * $Date    : 11/02/06    Kimi    v1.0
   9          *
  10          * Copyright (c) 2006 Fameg, Inc. All rights reserved
  11          *********************************************************************************************************
  12          */
  13          
  14          #include "aplif.h"
  15          
  16          //----------------------------------------------------------------------------
  17          // Description:
  18          //
  19          //----------------------------------------------------------------------------
  20          void  Nand_Command (INT8U command)
  21          {
  22   1          while (!AplifIdle());                              // Wait until APLIF ready
  23   1      
  24   1          APLIFWAVESEL    = 0x1B;                            // Single Write Select Waveform 0
  25   1      
  26   1          APLIFS_DATX_L   = command;                         // Trigger Single Byte Write
  27   1      
  28   1          while (!AplifIdle());                              // Wait until APLIF ready
  29   1      }
  30          
  31          //----------------------------------------------------------------------------
  32          // Description:
  33          //
  34          //----------------------------------------------------------------------------
  35          void  NanD_Address (INT8U address)
  36          {
  37   1          while (!AplifIdle());                              // Wait until APLIF ready
  38   1      
  39   1          APLIFWAVESEL    = 0x5B;                            // Single Write Select Waveform 1
  40   1      
  41   1          APLIFS_DATX_L   = address;                         // Trigger Single Byte Write
  42   1      
  43   1          while (!AplifIdle());                              // Wait until APLIF ready
  44   1      }
  45          
  46          //----------------------------------------------------------------------------
  47          // Description:
  48          //
  49          //----------------------------------------------------------------------------
  50          BYTE  NanD_Read (void)
  51          {
  52   1          BYTE    retval;
  53   1      
  54   1          while (!AplifIdle());                              // Wait until APLIF ready
C51 COMPILER V7.50   APLIF                                                                 04/17/2007 10:39:21 PAGE 2   

  55   1      
  56   1          APLIFWAVESEL    = 0x2B;                            // Single Read Select Waveform 2
  57   1      
  58   1          retval          = APLIFS_DATX_L;                   // Trigger Single Byte Read
  59   1      
  60   1          while (!AplifIdle());                              // Wait until APLIF ready
  61   1      
  62   1          retval          = APLIFS_DAT_L;                    // Get Real Data
  63   1      
  64   1          return retval;
  65   1      }
  66          
  67          //----------------------------------------------------------------------------
  68          // Description:
  69          //
  70          //----------------------------------------------------------------------------
  71          #pragma OPTIMIZE(0)
  72          void  Nand_ReadSector (void)
  73          {
  74   1          INT8U   temp;
  75   1      
  76   1          while (!AplifIdle());                              // Wait until APLIF ready
  77   1      
  78   1          APLIFWAVESEL    = 0x2A;                            // FIFO Read Select Waveform 2
  79   1      
  80   1          APLIFTCH        = 0x02;                            // TC = 512
  81   1          APLIFTCL        = 0x00;
  82   1      
  83   1          temp            = EPBAPLIFTRIG;                    // Trigger FIFO Read
  84   1      
  85   1          while (!AplifIdle());                              // Wait until APLIF ready
  86   1      }
  87          
  88          //----------------------------------------------------------------------------
  89          // Description:
  90          //
  91          //----------------------------------------------------------------------------
  92          #pragma OPTIMIZE(0)
  93          void  Nand_WriteSector (void)
  94          {
  95   1          EPACNT0L        = 0x00;                            // EPA CNT = 512, For USB 1.1
  96   1          EPACNTH         = 0x0A;
  97   1          EPAFIFOCS       = EPAFIFOCS | bmFIFO0_FULL_WE | bmFIFO0_FULL;
  98   1          SFI_SKIP        = 0x01;                            // Pass FIFO from USB to SFI
  99   1      
 100   1          while (!AplifIdle());                              // Wait until APLIF ready
 101   1      
 102   1          APLIFWAVESEL    = 0x2C;                            // FIFO Write Select Waveform 3
 103   1      
 104   1          APLIFTCH        = 0x02;                            // TC = 512
 105   1          APLIFTCL        = 0x00;
 106   1      
 107   1          EPAAPLIFTRIG    = 0xAA;                            // Trigger FIFO Write
 108   1      
 109   1          while (!AplifIdle());                              // Wait until APLIF ready
 110   1      }
 111          
 112          //----------------------------------------------------------------------------
 113          // Description:
 114          //
 115          //----------------------------------------------------------------------------
 116          void  Nand_ReadSpare (void)
C51 COMPILER V7.50   APLIF                                                                 04/17/2007 10:39:21 PAGE 3   

 117          {
 118   1          INT8U   temp;
 119   1      
 120   1          EPCCTRL         = 0x3E;                            // EPC Bulk In
 121   1      
 122   1          while (!AplifIdle());                              // Wait until APLIF ready
 123   1      
 124   1          APLIFWAVESEL    = 0x2A;                            // FIFO Read Select Waveform 2
 125   1      
 126   1          APLIFTCH        = 0x00;                            // TC = 64
 127   1          APLIFTCL        = HEADER_SIZE;
 128   1      
 129   1          temp            = EPCAPLIFTRIG;                    // Trigger FIFO Read
 130   1      
 131   1          while (!AplifIdle());                              // Wait until APLIF ready
 132   1      
 133   1          memcpy(SpareArea, (INT8U xdata *)DMA_FIFOC0, HEADER_SIZE);
 134   1          SFI_SKIP        = 0x84;
 135   1      }
 136          
 137          //----------------------------------------------------------------------------
 138          // Description:
 139          //
 140          //----------------------------------------------------------------------------
 141          void  Nand_WriteSpare (void)
 142          {
 143   1          EPCCTRL         = 0x3A;                            // EPC Bulk Out
 144   1      
 145   1          EPCCNT0L        = HEADER_SIZE;
 146   1          EPCCNTH         = 0x08;
 147   1          memcpy((INT8U xdata *)DMA_FIFOC0, SpareArea, HEADER_SIZE);
 148   1          EPCFIFOCS       = EPCFIFOCS | bmFIFO0_FULL_WE | bmFIFO0_FULL;
 149   1          SFI_SKIP        = 0x04;
 150   1      
 151   1          while (!AplifIdle());                              // Wait until APLIF ready
 152   1      
 153   1          APLIFWAVESEL    = 0x2C;                            // FIFO Write Select Waveform 3
 154   1      
 155   1          APLIFTCH        = 0x00;                            // TC = 64
 156   1          APLIFTCL        = HEADER_SIZE;
 157   1      
 158   1          EPCAPLIFTRIG    = 0xAA;                            // Trigger FIFO Write
 159   1      
 160   1          while (!AplifIdle());                              // Wait until APLIF ready
 161   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    414    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =      2    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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