📄 memext.lst
字号:
C51 COMPILER V7.06 MEMEXT 05/27/2008 10:13:21 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MEMEXT
OBJECT MODULE PLACED IN Memext.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE Memext.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include <absacc.h>
3 #include "memext.h"
4
5 sbit MEM_CE = P1^4;
6
7 #define TEST_BASE 0x00
8
9
10 void delay(unsigned int n)
11 {
12 1 unsigned int i;
13 1 for(i = 0;i<n;i++);
14 1 }
15
16 uchar Read_Byte(uint address,uchar page)
17 {
18 1 uchar c;
19 1 //////num always < 8
20 1 page &= MAX_PAGE_MASK; /////pages always less than 16
21 1
22 1 EA = 0; ////disable the interrupt
23 1
24 1 c = P1 & MEM_P1_HIGH;
25 1 P1 = c | (page & MEM_P1_LOW);
26 1
27 1 MEM_CE = 0;
28 1 //delay(100);
29 1 c = XBYTE[address];
30 1 //delay(100);
31 1 MEM_CE = 1;
32 1
33 1 P1 &= MEM_P1_HIGH;
34 1 EA = 1 ;
35 1 return c;
36 1
37 1 }
38
39 void page_input(uint address,uchar page,uchar num,uchar *pXfer_Buf)
40 {
41 1 uchar c,c1;
42 1 num &= MAX_NUM_MASK; //////num always < 8
43 1 page &= MAX_PAGE_MASK; /////pages always less than 16
44 1
45 1 EA = 0; ////disable the interrupt
46 1 //// P1 = page;
47 1 ////only change the 4LSB of P1
48 1 /// MEM_CE = 0;
49 1 c = P1 & MEM_P1_HIGH;
50 1 P1 = c | (page & MEM_P1_LOW);
51 1
52 1
53 1 for(c1 = 0;c1 < num; c1++)
54 1 {
55 2 MEM_CE = 0;
C51 COMPILER V7.06 MEMEXT 05/27/2008 10:13:21 PAGE 2
56 2 pXfer_Buf[c1] = XBYTE[address+c1];
57 2 MEM_CE = 1;
58 2 // delay(300);
59 2 }
60 1
61 1 /// MEM_CE = 1;
62 1 P1 &= MEM_P1_HIGH;
63 1 EA = 1 ;
64 1
65 1 }
66
67 void main(void)
68 {
69 1 char c1,c3;
70 1 //char c2[1];
71 1 uint i,j;
72 1
73 1 TMOD = 0x20;
74 1 TH1 =0xfd;
75 1 SCON = 0x50;
76 1 TR1 = 1;
77 1
78 1 while(1)
79 1 {
80 2 for(j=0;j<6;j++)
81 2 {
82 3 for(i = 0; i<0xff;i++)
83 3 {
84 4 /// page_input(TEST_BASE + i,j,1,c2);
85 4 c3 = Read_Byte(TEST_BASE+i,j);
86 4 delay(10000);
87 4 // P1 = ~c1;
88 4 c1 = TEST_BASE+i;
89 4 SBUF = c1;
90 4 while(TI == 0);TI = 0;
91 4
92 4 //// SBUF = c2[0];
93 4 SBUF = c3;
94 4 while(TI == 0);
95 4 TI = 0;
96 4
97 4 }
98 3 /// while(1);
99 3 SBUF = 0xff;
100 3 while(TI == 0);TI = 0; SBUF = 0xff;
101 3 while(TI == 0);TI = 0; SBUF = 0xff;
102 3 while(TI == 0);TI = 0; SBUF = 0xff;
103 3 while(TI == 0);TI = 0; SBUF = 0xff;
104 3 while(TI == 0);TI = 0;
105 3
106 3 delay(65535); delay(65535); delay(65535);
107 3 /// P1 = ~c1; delay(65535); delay(65535);
108 3 } ///delay(65535); delay(65535);delay(65535); delay(65535);delay(65535); delay(65535);
109 2
110 2
111 2
112 2 }
113 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 258 ----
C51 COMPILER V7.06 MEMEXT 05/27/2008 10:13:21 PAGE 3
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
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 + -