📄 eepromprc.lst
字号:
C51 COMPILER V6.02 EEPROMPRC 09/10/2005 17:11:40 PAGE 1
C51 COMPILER V6.02, COMPILATION OF MODULE EEPROMPRC
OBJECT MODULE PLACED IN D:\2005_09\eepromprc.OBJ
COMPILER INVOKED BY: D:\C51\BIN\C51.EXE D:\2005_09\eepromprc.c SMALL DB OE CO OT(SIZE)
stmt level source
1 /*******************************************************************/
2 /********* A8 = 0 *****************/
3 /** mo ren de system mi ma (system_code) ADDRESS 0x0a -0x0d **/
4 /** yong hu shezhi de dp_point weizhi ADDRESS 0x0e **/
5 /** xianzhai zhixiang page1 de zhizheng wei zhi ADDRESS 0x10 **/
6 /** bao jin shang xian (up_alarm_data) ADDRESS 0x12 - 0x14 **/
7 /** bao jin xia xian (down_alarm_data) ADDRESS 0x15 - 0x16 **/
8 /** liang cheng fan wei() ADDRESS 0x18 - 0x1b **/
9 /** lu bo zhi su (filter_data) ADDRESS 0x1c **/
10 /** xiao liu liang xin hao(cut_data) ADDRESS 0x1d **/
11 /** system_lchen ADDRESS 0x20-0x23 **/
12 /** system_dp ADDRESS 0x24 **/
13 /** system_gain ADDRESS 0x25 **/
14 /** pulse danliang ADDRESS 0x26--0x29 **/
15 /** pulse danliang dp ADDRESS 0x2a **/
16 /** sensor_k ADDRESS 0x30--0x33 **/
17 /** sensor_dp ADDRESS 0x34 **/
18 /** da_offset ADDRESS 0x35--0x37 **/
19 /** zero_offset ADDRESS 0x38--0x3c **/
20 /** zero_symbol ADDRESS 0x38 **/
21 /** zero_dp ADDRESS 0x3d **/
22 /************* A8 = 1 **********/
23 /** zhen xiang lei ji liu liang ADDRESS 0x10 (kaishi)-0x13 **/
24 /** fan xiang lei ji liu liang ADDRESS 0x14-0x17 **/
25 /** jing lei ji liu liang ADDRESS 0x18-0x1b **/
26 /*******************************************************************/
27 #include "reg52.h"
28 #include "typedef.h"
29 #include "function.h"
30 #include "define.h"
31 #include "varible.h"
32 sbit CS = P1^0 ;
33 sbit SO = P1^2 ;
34 sbit SK = P1^1 ;
35 sbit SI = P1^2 ;
36
37
38
39 /*********************************/
40
41 unsigned char Read(void);
42 void Write(unsigned char cdata);
43 unsigned char ReadSR(void);
44 //unsigned char WriteSR(unsigned char cdata);
45 void Write1B(unsigned char cdata,unsigned char ADDRESS,bit PAGE);
46 unsigned char Read1B(unsigned char ADDRESS, bit PAGE);
47 unsigned char Code_check(void);
48 void X25043_init(void);
49 void Save_dp_point(unsigned char addr);
50 void Set_watchdog_time(unsigned char time);
51
52 //void Delay_2us(void);
53 /*********************************/
54 /*********************************/
55
C51 COMPILER V6.02 EEPROMPRC 09/10/2005 17:11:40 PAGE 2
56 unsigned char Read(void)
57 {
58 1 bit b_data;
59 1 unsigned char i;
60 1 unsigned char cdata;
61 1 cdata = 0x00;
62 1 SO = 1 ;
63 1 for(i=0;i<8;i++)
64 1 {
65 2
66 2 SK = 1 ;
67 2 // Delay_2us();
68 2 SK = 0 ;
69 2 // Delay_2us();
70 2 ;
71 2 b_data = SO ;
72 2 if(b_data)
73 2 cdata |= 0x01 ;
74 2 if(i<7)
75 2 cdata <<= 1;
76 2 }
77 1 return(cdata);
78 1 }
79
80
81 /*********************************/
82 /*********************************/
83
84 void Write( unsigned char cdata)
85 {
86 1 unsigned char i ;
87 1 //Delay_2us();
88 1 for(i=0;i<8;i++)
89 1 { if((cdata &0x80) == 0)
90 2 SI = 0;
91 2 else
92 2 SI = 1 ;
93 2 // Delay_2us();
94 2 SK = 0;
95 2 ;
96 2 // Delay_2us();
97 2 SK = 1 ;
98 2 // Delay_2us();
99 2 cdata <<= 1;
100 2 }
101 1
102 1 }
103
104
105 /*********************************/
106 /*********************************/
107
108 unsigned char ReadSR(void)
109 {
110 1 unsigned char cdata ;
111 1 CS = 0 ;
112 1 Write(RDSR) ;
113 1 cdata = Read();
114 1 CS = 1 ;
115 1 return(cdata);
116 1 }
117
C51 COMPILER V6.02 EEPROMPRC 09/10/2005 17:11:40 PAGE 3
118
119 /*********************************/
120 /*********************************/
121 /*
122 unsigned char WriteSR(unsigned char cdata)
123 {
124 unsigned char ctemp;
125 ctemp = ReadSR();
126 if((ctemp&0x01) == 1 ) //is writing now
127 return 0;
128 CS = 0 ;
129 Write(WREN);
130 CS = 1 ;
131 CS = 0 ;
132 Write(WRSR);
133 Write(cdata);
134 CS = 1;
135 return 1 ;
136 }
137 */
138 /*********************************/
139 /*********************************/
140
141 void Write1B( unsigned char cdata, unsigned char ADDRESS,bit PAGE)
142
143 {
144 1 while((ReadSR()&0x01) == 1) //if is writing now,then wait
145 1 {
146 2 ;
147 2 }
148 1 CS = 0 ;
149 1 // Delay_2us();
150 1 Write(WREN);
151 1 // Delay_2us();
152 1 CS = 1;
153 1 // Delay_2us();
154 1 CS = 0 ;
155 1 if(PAGE == 0)
156 1 Write(WRITE0);
157 1 else
158 1 Write(WRITE1);
159 1 Write(ADDRESS);
160 1 Write(cdata) ;
161 1 CS = 1 ;
162 1
163 1 }
164
165
166 /*********************************/
167 /*********************************/
168
169 unsigned char Read1B(unsigned char ADDRESS, bit PAGE)
170 {
171 1 unsigned char cdata ;
172 1 while((ReadSR()&0x01) == 1)
173 1 ;
174 1 CS = 0 ;
175 1 if( PAGE == 0)
176 1 Write(READ0);
177 1 else
178 1 Write(READ1);
179 1 Write(ADDRESS);
C51 COMPILER V6.02 EEPROMPRC 09/10/2005 17:11:40 PAGE 4
180 1 cdata = Read();
181 1 CS = 1 ;
182 1 return(cdata);
183 1 }
184
185
186 /*********************************/
187 /*********************************/
188 void X25043_init(void)
189 {
190 1 CS = 1 ;
191 1 SI =1;
192 1 SK = 1 ;
193 1 }
194
195 /*********************************/
196 /*********************************/
197
198 /*********************************/
199 /*********************************/
200 unsigned char Code_check(void)
201 {
202 1
203 1 if((user_setdata.oneseg==Read1B(0x0d,0))&&(user_setdata.twoseg == Read1B(0x0c,0))
204 1 &&(user_setdata.thrseg == Read1B(0x0b,0))&&(user_setdata.fouseg == Read1B(0x0a,0)))
205 1
206 1 return 1;
207 1 else
208 1 return 0;
209 1 }
210
211 /*******************************/
212 /*******************************/
213
214 void Save_dp_point(unsigned char addr)
215 {
216 1 Write1B(dp_point,addr,0);
217 1 return;
218 1 }
219
220
221 /*******************************/
222 /**** set watchdog time 200ms **/
223
224 void Set_watchdog_time(unsigned char time)
225 {
226 1 while((ReadSR()&0x01) == 1) //wait write operation over
227 1 ;
228 1 CS = 0 ;
229 1 Write(WREN);
230 1 CS = 1 ;
231 1 CS = 0 ;
232 1 Write(WRSR);
233 1 Write(time);
234 1 CS = 1;
235 1 return;
236 1 }
237 /******************************/
238 /***************************/
239 /*void Delay_2us(void)
240
241
C51 COMPILER V6.02 EEPROMPRC 09/10/2005 17:11:40 PAGE 5
242 {
243 unsigned char idata i;
244 for(i=0;i<2;i++)
245
246 ;
247 return;
248 } */
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 273 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 3
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -