📄 iicwr.lst
字号:
155 1 EN_SCLOUT;
*** ERROR C202 IN LINE 155 OF BOTTOM\IICWR.C: 'EN_SCLOUT': undefined identifier
156 1 SET_SDAW;
*** ERROR C202 IN LINE 156 OF BOTTOM\IICWR.C: 'SET_SDAW': undefined identifier
157 1 delay_4();
158 1 SET_SCL;
*** ERROR C202 IN LINE 158 OF BOTTOM\IICWR.C: 'SET_SCL': undefined identifier
159 1 delay_4();
160 1 CLR_SCL;
*** ERROR C202 IN LINE 160 OF BOTTOM\IICWR.C: 'CLR_SCL': undefined identifier
161 1 DISEN_SDAOUT;
*** ERROR C202 IN LINE 161 OF BOTTOM\IICWR.C: 'DISEN_SDAOUT': undefined identifier
162 1 delay_4();
163 1 }
164
165
166 //-------------------------------------------------------
167 //函数功能:从指定的EEPROM中读出需要的数据
168 //备注:1、参数addr表示的是芯片物理中地址。要读数据的地址放在data.addr中
169 // 2、返回数据放在读写缓存WR_BUFF数组中,最多一次读取50字节数据
170 // 3、返回1表示读成功,0表示读数据失败
171 //-------------------------------------------------------
172 unsigned char read_byte(a,addr)
173 unsigned char a,addr;
174 {unsigned char i,l;
175 1 l=0;
176 1 eeprom_stop();
177 1 eeprom_start();
178 1 eeprom_wb(addr);
179 1 #if(Type_EEP==E24C128||Type_EEP==E24C256)
*** WARNING C322 IN LINE 179 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 179 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 179 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 179 OF bottom\IICWR.c: unknown identifier
180 1 if(1==eeprom_ack())
181 1 {eeprom_wb(data_addr.byte[2]);
*** ERROR C202 IN LINE 181 OF BOTTOM\IICWR.C: 'data_addr': undefined identifier
182 2 if(1==eeprom_ack())
183 2 { eeprom_wb(data_addr.byte[3]);
*** ERROR C202 IN LINE 183 OF BOTTOM\IICWR.C: 'data_addr': undefined identifier
C51 COMPILER V7.06 IICWR 11/24/2008 09:37:06 PAGE 5
184 3 if(1==eeprom_ack())
185 3 { eeprom_start();
186 4 eeprom_wb(addr|0x1);
187 4 if(1==eeprom_ack())
188 4 { for(i=0;i<a;i++)
189 5 { wr_buff[i]=eeprom_rb();
*** ERROR C202 IN LINE 189 OF BOTTOM\IICWR.C: 'wr_buff': undefined identifier
190 6 if(i<(a-1))
191 6 send_ack();
192 6 else
193 6 { send_noack();
194 7 eeprom_stop();
195 7 l=1;
196 7 }
197 6 }
198 5 }
199 4 else
200 4 { eeprom_stop();
201 5 l=0;
202 5 }
203 4 }
204 3 else
205 3 { eeprom_stop();
206 4 l=0;
207 4 }
208 3 }
209 2 else
210 2 { eeprom_stop();
211 3 l=0;
212 3 }
213 2 }
214 1 else
215 1 { eeprom_stop();
216 2 l=0;
217 2 }
218 1 #else
if(1==eeprom_ack())
{ eeprom_wb(data_addr.byte[3]);
if(1==eeprom_ack())
{ eeprom_start();
eeprom_wb(addr|0x1);
if(1==eeprom_ack())
{ for(i=0;i<a;i++)
{ wr_buff[i]=eeprom_rb();
if(i<(a-1))
send_ack();
else
{ send_noack();
eeprom_stop();
l=1;
}
}
}
else
{ eeprom_stop();
l=0;
}
}
else
{ eeprom_stop();
l=0;
}
C51 COMPILER V7.06 IICWR 11/24/2008 09:37:06 PAGE 6
}
else
{ eeprom_stop();
l=0;
}
#endif
252 1 return l;
253 1 }
254
255 //-------------------------------------------------------
256 //函数功能:写数据到指定的EEPROM
257 //备注:1、参数addr表示的是芯片物理中地址。要写数据的地址放在data.addr中
258 // 2、要写的数据放在读写缓存WR_BUFF数组中,最多一次写50字节数据
259 // 3、返回1表示写成功,0表示写失败
260 //-------------------------------------------------------
261
262 unsigned char write_byte(unsigned char a,unsigned char addr,unsigned char *addrpoint)
263 {unsigned char i,value; //a==0 kao lv
264 1 CLR_WP; // WP输出低,允许写入
*** ERROR C202 IN LINE 264 OF BOTTOM\IICWR.C: 'CLR_WP': undefined identifier
265 1 EN_WPOUT; // WP允许输出
*** ERROR C202 IN LINE 265 OF BOTTOM\IICWR.C: 'EN_WPOUT': undefined identifier
266 1 CLR_WP; // WP输出低,允许写入
*** ERROR C202 IN LINE 266 OF BOTTOM\IICWR.C: 'CLR_WP': undefined identifier
267 1 eeprom_stop();
268 1 eeprom_start();
269 1 #if(Type_EEP==E24C128||Type_EEP==E24C256)
*** WARNING C322 IN LINE 269 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 269 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 269 OF bottom\IICWR.c: unknown identifier
*** WARNING C322 IN LINE 269 OF bottom\IICWR.c: unknown identifier
270 1 eeprom_wb(addr); //a2 //eeprom_wb(0xa0|((data_addr.addrc[2]<<1)&
-0xe));
271 1 if(1==eeprom_ack())
272 1 { eeprom_wb(data_addr.byte[2]);
*** ERROR C202 IN LINE 272 OF BOTTOM\IICWR.C: 'data_addr': undefined identifier
273 2 if(1==eeprom_ack())
274 2 { eeprom_wb(data_addr.byte[3]);
*** ERROR C202 IN LINE 274 OF BOTTOM\IICWR.C: 'data_addr': undefined identifier
275 3 if(1==eeprom_ack())
276 3 {value=1;
277 4 for(i=0;i<a;i++)
278 4 { eeprom_wb(addrpoint[i]);
279 5 if(0==eeprom_ack())
280 5 { i=a;
281 6 value=0;
282 6 }
283 5 }
284 4 eeprom_stop();
285 4 return value;
286 4 }
287 3 else
288 3 { eeprom_stop();
289 4 return 0;
290 4 }
291 3 }
292 2 else
293 2 { eeprom_stop();
294 3 return 0;
295 3 }
296 2 }
C51 COMPILER V7.06 IICWR 11/24/2008 09:37:06 PAGE 7
297 1 else
298 1 { eeprom_stop();
299 2 return 0;
300 2 }
301 1 #else
eeprom_wb(addr); //a2 //eeprom_wb(0xa0|((data_addr.addr
-c[2]<<1)&0xe));
if(1==eeprom_ack())
{ eeprom_wb(data_addr.byte[3]);
if(1==eeprom_ack())
{value=1;
for(i=0;i<a;i++)
{ eeprom_wb(addrpoint[i]);
if(0==eeprom_ack())
{ i=a;
value=0;
}
}
eeprom_stop();
return value;
}
else
{ eeprom_stop();
return 0;
}
}
else
{ eeprom_stop();
return 0;
}
#endif
328 1
329 1 //CLR_WP; // WP=1 禁止写入
330 1 }
331
-
-
-
-
-
-
C51 COMPILATION COMPLETE. 10 WARNING(S), 56 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -