📄 block0.lst
字号:
C51 COMPILER V7.50 BLOCK0 11/17/2005 23:11:35 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 1.片内的用户程序容量超过标准51单片机的极限--64K,单片最大可达72K的用户程序空间
10
11 本例子,就简单说明了这些功能的实现:
12 1.在SST89E516RD/564RD的BLOCK0(64K)内存放BLOCK0.C的程序文件,允许最大到64K;在BLOCK1(8K)内存放BLOCK1.C的
13 程序文件,最大到8K,通过KEIL C51的BANK分区指令,可有效将两个BLOCK的程序合在一起,互相调用,从而形成64+8=72K
14 的程序容量空间.
15 2.本示例采用最精简的函数和结构,主在说明在SST89E516/564RD的单片机内可实现超过64K的程序空间的功能.
16
17 */
18
19 #include <intrins.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 INTRINS.H
3 =1
4 =1 Intrinsic functions for C51.
5 =1 Copyright (c) 1988-2004 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
7 =1 --------------------------------------------------------------------------*/
8 =1
9 =1 #ifndef __INTRINS_H__
10 =1 #define __INTRINS_H__
11 =1
12 =1 extern void _nop_ (void);
13 =1 extern bit _testbit_ (bit);
14 =1 extern unsigned char _cror_ (unsigned char, unsigned char);
15 =1 extern unsigned int _iror_ (unsigned int, unsigned char);
16 =1 extern unsigned long _lror_ (unsigned long, unsigned char);
17 =1 extern unsigned char _crol_ (unsigned char, unsigned char);
18 =1 extern unsigned int _irol_ (unsigned int, unsigned char);
19 =1 extern unsigned long _lrol_ (unsigned long, unsigned char);
20 =1 extern unsigned char _chkfloat_(float);
21 =1 extern void _push_ (unsigned char _sfr);
22 =1 extern void _pop_ (unsigned char _sfr);
23 =1
24 =1 #endif
25 =1
20 #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;
C51 COMPILER V7.50 BLOCK0 11/17/2005 23:11:35 PAGE 2
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;
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
C51 COMPILER V7.50 BLOCK0 11/17/2005 23:11:35 PAGE 3
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 */
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;
C51 COMPILER V7.50 BLOCK0 11/17/2005 23:11:35 PAGE 4
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;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -