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

📄 main.lst

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


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

line level    source

   1          /*
   2          *********************************************************************************************************
   3          * File     : Main.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          #define ALLOCATE_EXTERN                                // Declare GLOBAL variables and functions
  15          
  16          #include "main.h"
  17          
  18          //----------------------------------------------------------------------------
  19          // Description:
  20          //
  21          //----------------------------------------------------------------------------
  22          void  Timer0 (void) interrupt 1 using 2
  23          {
  24   1                                                             // Restore the counter to 10 ms
  25   1          TH0         = 0x3C;                                // 0x3CB0, CPU 60MHz, 10ms
  26   1          TL0         = 0xB0;
  27   1      
  28   1          if (DelayTimer)
  29   1          {
  30   2              DelayTimer--;
  31   2          }
  32   1      
  33   1          if (SmFlushTimer)
  34   1          {
  35   2              SmFlushTimer--;
  36   2              if (SmFlushTimer == 0)
  37   2              {
  38   3                  SmFlushFlag = true;
  39   3              }
  40   2          }
  41   1      }
  42          
  43          //----------------------------------------------------------------------------
  44          // Description:
  45          //
  46          //----------------------------------------------------------------------------
  47          void  SPI_INT_ISR (void) interrupt 7 using 3
  48          {
  49   1          if (CHIPINT & bmSPI_INT)
  50   1          {
  51   2              if (SPI_ST & bmRFFINT)
  52   2              {
  53   3      // receive data from SPI 
  54   3              }
C51 COMPILER V7.50   MAIN                                                                  04/17/2007 10:39:19 PAGE 2   

  55   2              if (SPI_ST & bmTEFINT)
  56   2              {
  57   3      // send data to SPI 
  58   3              }
  59   2          }
  60   1      }
  61          
  62          //----------------------------------------------------------------------------
  63          // Description:
  64          //   Read Operation
  65          //----------------------------------------------------------------------------
  66          void  Read (void)
  67          {
  68   1          UINT16  i;
  69   1          BYTE    j;
  70   1      
  71   1          for (i = 0; i < SectorCount; i++)
  72   1          {
  73   2              for (j = 0; j < 4; j++)
  74   2              {
  75   3                  if (j == 0)
  76   3                  {
  77   4                      SmReadSector();
  78   4                  }
  79   3                  else
  80   3                  {
  81   4                      SmReadNextSector();
  82   4                  } 
  83   3      // you should add code here to send the 512 byte data of IN FIFO to SPI 
  84   3                  SFI_SKIP    = 0x82;                        // Skip Data Packet in order to Read Next 512 Data 
             -Packet
  85   3              }
  86   2          }
  87   1      }
  88          
  89          //----------------------------------------------------------------------------
  90          // Description:
  91          //   Write Operation
  92          //----------------------------------------------------------------------------
  93          void  Write (void)
  94          {
  95   1          UINT16  i;
  96   1          BYTE    j;
  97   1      
  98   1          for (i = 0; i < SectorCount; i++)
  99   1          {
 100   2              for (j = 0; j < 4; j++)
 101   2              { 
 102   3      // you should add code here to receive data from SPI and then copy this data to OUT FIFO  
 103   3      // start APLIF,send data to NAND FLASH
 104   3                  if (j == 0)
 105   3                  {
 106   4                      SmWriteSector();
 107   4                  }
 108   3                  else
 109   3                  {
 110   4                      SmWriteNextSector();
 111   4                  }
 112   3              }
 113   2          }
 114   1      }
 115          
C51 COMPILER V7.50   MAIN                                                                  04/17/2007 10:39:19 PAGE 3   

 116          //----------------------------------------------------------------------------
 117          // Description:
 118          //
 119          //----------------------------------------------------------------------------
 120          void  main (void)
 121          {
 122   1          TdInit();
 123   1      
 124   1          SmEraseAll();
 125   1      
 126   1          while (true)
 127   1          {
 128   2              SectorStart = 0;
 129   2              SectorCount = 1;
 130   2              Write();
 131   2      
 132   2              SectorStart = 0;
 133   2              SectorCount = 1;
 134   2              Read();
 135   2              
 136   2              if (SmFlushFlag)
 137   2              {
 138   3                  SmFlushBlock();
 139   3              }
 140   2          }
 141   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    311    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =      9       6
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =     20    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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