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

📄 block0.lst

📁 一个用SST89X516/564RD单片机实现程序和数据存储互补利用例子(即程序剩下的存储空间用作数据存储,最大可超过64K的数据存储空间)
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V7.50   BLOCK0                                                                11/17/2005 23:12:25 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE BLOCK0
OBJECT MODULE PLACED IN Block0.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE Block0.C BROWSE DEBUG OBJECTEXTEND CODE LISTINCLUDE SYMBOLS

line level    source

   1          /*
   2          
   3          ********超高性价比的51单片机--20元以下的可达72K程序空间及可在任何地址存储数据的增强性51单片机************
   4          ************采用超级FLASH存储器的超级51单片机---SST89E/V52-54-58-516RD,具有超级程序和数据空间的功能******
   5          
   6                                                                  香港弘微科技有限公司       田伯运
   7                                                                  andy.tian@spacltd.com.cn    0755-26010579
   8                                          
   9          
  10          
  11                  1.片内的用户程序容量超过标准51单片机的极限--64K,单片最大可达72K的用户程序空间
  12                  2.片内FLASH的任意地址均可作为数据或程序单元进行存储,具有超级的灵活性,这是其它51单片机所不能达到的极限.
  13          
  14                  本例子,就简单说明了这些功能的实现:
  15                  1.在SST89E516RD/564RD的BLOCK0(64K)内存放BLOCK0.C的程序文件,允许最大到64K;在BLOCK1(8K)内存放BLOCK1.C的
  16                    程序文件,最大到8K,通过KEIL C51的BANK分区指令,可有效将两个BLOCK的程序合在一起,互相调用,从而形成64+8=72K
  17                    的程序容量空间.
  18                  2.在两个BLOCK内都存放有FLASH的擦写指令,便可对72K内的任意非程序空间的剩余空间都作为DATA存储空间来用,从而
  19                    打破了在MCU片内最大只能64K数据空间的限制,数据存储片内也可超过64K.
  20                  3.本示例采用最精简的函数和结构,主在说明在SST89E516/564RD的单片机内可实现超过64K的程序空间和任意地址存储数
             -据
  21                    的功能.       
  22          
  23                  */
  24          
  25          #include <SST89X5XXRD2.H>
   1      =1  /*  BYTE Registers  */
   2      =1  sfr P0    = 0x80;
   3      =1  sfr P1    = 0x90;
   4      =1  sfr P2    = 0xA0;
   5      =1  sfr P3    = 0xB0;
   6      =1  sfr PSW   = 0xD0;
   7      =1  sfr ACC   = 0xE0;
   8      =1  sfr B     = 0xF0;
   9      =1  sfr SP    = 0x81;
  10      =1  sfr DPL   = 0x82;
  11      =1  sfr DPH   = 0x83;
  12      =1  sfr PCON  = 0x87;
  13      =1  sfr TCON  = 0x88;
  14      =1  sfr TMOD  = 0x89;
  15      =1  sfr TL0   = 0x8A;
  16      =1  sfr TL1   = 0x8B;
  17      =1  sfr TH0   = 0x8C;
  18      =1  sfr TH1   = 0x8D;
  19      =1  sfr IE    = 0xA8;
  20      =1  sfr IP    = 0xB8;
  21      =1  sfr SCON  = 0x98;
  22      =1  sfr SBUF  = 0x99;
  23      =1  
  24      =1  /*  8052 Extensions */
  25      =1  sfr T2CON  = 0xC8;
  26      =1  sfr T2MOD  = 0xC9;
  27      =1  sfr RCAP2L = 0xCA;
  28      =1  sfr RCAP2H = 0xCB;
  29      =1  sfr TL2    = 0xCC;
C51 COMPILER V7.50   BLOCK0                                                                11/17/2005 23:12:25 PAGE 2   

  30      =1  sfr TH2    = 0xCD;
  31      =1  
  32      =1  /*  89x5xxRD2 Extensions */
  33      =1  sfr IPA   = 0xF8;
  34      =1  sfr IEA   = 0xE8;
  35      =1  sfr SADDR = 0xA9;
  36      =1  sfr SADEN = 0xB9;
  37      =1  sfr SPSR  = 0xAA;
  38      =1  sfr AUXR1 = 0xA2;
  39      =1  sfr AUXR  = 0x8E;
  40      =1  sfr WDTD  = 0x85;
  41      =1  sfr WDTC  = 0xC0;
  42      =1  sfr SPDR  = 0x86;
  43      =1  sfr SFCF  = 0xB1;
  44      =1  sfr SFCM  = 0xB2;
  45      =1  sfr SFAL  = 0xB3;
  46      =1  sfr SFAH  = 0xB4;
  47      =1  sfr SFDT  = 0xB5;
  48      =1  sfr SFST  = 0xB6;
  49      =1  sfr IPH   = 0xB7;
  50      =1  sfr SPCR  = 0xD5;
  51      =1  sfr IPAH  = 0xF7;
  52      =1  sfr P4    = 0xA5;
  53      =1  sfr XICON = 0xAE;
  54      =1  
  55      =1  /*  PCA   */
  56      =1  sfr CCON  = 0xD8;
  57      =1  sfr CMOD  = 0xD9;
  58      =1  sfr CL    = 0XE9;
  59      =1  sfr CH    = 0xF9;
  60      =1  
  61      =1  sfr CCAPM0= 0XDA;
  62      =1  sfr CCAPM1= 0XDB;
  63      =1  sfr CCAPM2= 0XDC;
  64      =1  sfr CCAPM3= 0XDD;
  65      =1  sfr CCAPM4= 0XDE;
  66      =1  
  67      =1  sfr CCAP0L= 0XEA;
  68      =1  sfr CCAP1L= 0XEB;
  69      =1  sfr CCAP2L= 0XEC;
  70      =1  sfr CCAP3L= 0XED;
  71      =1  sfr CCAP4L= 0XEE;
  72      =1  
  73      =1  sfr CCAP0H= 0XFA;
  74      =1  sfr CCAP1H= 0XFB;
  75      =1  sfr CCAP2H= 0XFC;
  76      =1  sfr CCAP3H= 0XFD;
  77      =1  sfr CCAP4H= 0XFE;
  78      =1  
  79      =1  
  80      =1  
  81      =1  /*  BIT Registers  */
  82      =1  /*  PSW  */
  83      =1  sbit CY    = PSW^7;
  84      =1  sbit AC    = PSW^6;
  85      =1  sbit F0    = PSW^5;
  86      =1  sbit RS1   = PSW^4;
  87      =1  sbit RS0   = PSW^3;
  88      =1  sbit OV    = PSW^2;
  89      =1  sbit P     = PSW^0; 
  90      =1  
  91      =1  /*  TCON  */
C51 COMPILER V7.50   BLOCK0                                                                11/17/2005 23:12:25 PAGE 3   

  92      =1  sbit TF1   = TCON^7;
  93      =1  sbit TR1   = TCON^6;
  94      =1  sbit TF0   = TCON^5;
  95      =1  sbit TR0   = TCON^4;
  96      =1  sbit IE1   = TCON^3;
  97      =1  sbit IT1   = TCON^2;
  98      =1  sbit IE0   = TCON^1;
  99      =1  sbit IT0   = TCON^0;
 100      =1  
 101      =1  /*  IE  */
 102      =1  sbit EA    = IE^7;
 103      =1  sbit EC    = IE^6;
 104      =1  sbit ET2   = IE^5; 
 105      =1  sbit ES    = IE^4;
 106      =1  sbit ET1   = IE^3;
 107      =1  sbit EX1   = IE^2;
 108      =1  sbit ET0   = IE^1;
 109      =1  sbit EX0   = IE^0;
 110      =1  
 111      =1  /*  IP  */
 112      =1  sbit PPC   = IP^6;
 113      =1  sbit PT2   = IP^5;
 114      =1  sbit PS    = IP^4;
 115      =1  sbit PT1   = IP^3;
 116      =1  sbit PX1   = IP^2;
 117      =1  sbit PT0   = IP^1;
 118      =1  sbit PX0   = IP^0;
 119      =1  
 120      =1  /*  P3  */
 121      =1  sbit RD    = P3^7;
 122      =1  sbit WR    = P3^6;
 123      =1  sbit T1    = P3^5;
 124      =1  sbit T0    = P3^4;
 125      =1  sbit INT1  = P3^3;
 126      =1  sbit INT0  = P3^2;
 127      =1  sbit TXD   = P3^1;
 128      =1  sbit RXD   = P3^0;
 129      =1  
 130      =1  /*  SCON  */
 131      =1  sbit SM0   = SCON^7;
 132      =1  sbit FE    = SCON^7;
 133      =1  sbit SM1   = SCON^6;
 134      =1  sbit SM2   = SCON^5;
 135      =1  sbit REN   = SCON^4;
 136      =1  sbit TB8   = SCON^3;
 137      =1  sbit RB8   = SCON^2;
 138      =1  sbit TI    = SCON^1;
 139      =1  sbit RI    = SCON^0;
 140      =1  
 141      =1  /*  P1  */
 142      =1  sbit CEX4  = P1^7;
 143      =1  sbit CEX3  = P1^6;
 144      =1  sbit CEX2  = P1^5;
 145      =1  sbit CEX1  = P1^4;
 146      =1  sbit CEX0  = P1^3;
 147      =1  sbit ECI   = P1^2;
 148      =1  sbit T2EX  = P1^1; 
 149      =1  sbit T2    = P1^0; 
 150      =1               
 151      =1  /*  T2CON  */
 152      =1  sbit TF2    = T2CON^7;
 153      =1  sbit EXF2   = T2CON^6;
C51 COMPILER V7.50   BLOCK0                                                                11/17/2005 23:12:25 PAGE 4   

 154      =1  sbit RCLK   = T2CON^5;
 155      =1  sbit TCLK   = T2CON^4;
 156      =1  sbit EXEN2  = T2CON^3;
 157      =1  sbit TR2    = T2CON^2;
 158      =1  sbit C_T2   = T2CON^1;
 159      =1  sbit CP_RL2 = T2CON^0;
 160      =1  
 161      =1  /*   CCON   */
 162      =1  sbit CF     = CCON^7;
 163      =1  sbit CR     = CCON^6;
 164      =1  sbit CCF4   = CCON^4;
 165      =1  sbit CCF3   = CCON^3;
 166      =1  sbit CCF2   = CCON^2;
 167      =1  sbit CCF1   = CCON^1;
 168      =1  sbit CCF0   = CCON^0;
 169      =1  
 170      =1  /*   WDTC   */
 171      =1  sbit WDOUT  = WDTC^4;
 172      =1  sbit WDRE   = WDTC^3;
 173      =1  sbit WDTS   = WDTC^2;

⌨️ 快捷键说明

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