📄 eepromcopy.lst
字号:
169 2 return btIIC_RIGHT;
170 2 }
171 1 else
172 1 {
173 2 Chip_Station&=~Chip_table[Iic_type];
174 2 return btIIC_ERROR;
175 2 }
176 1 }
177
178 void Chek_Chip(void)
179 {
180 1 BYTE Iic_Chip;
181 1 for (Iic_Chip=IIC_AT24CXX_D1;Iic_Chip<=IIC_AT24CXX_R;Iic_Chip++)
182 1 Chek_ChipStation(Iic_Chip);
183 1 }
184 void Disp_CurLed(WORD Chip_Select)
185 {
186 1 switch (Chip_Select)
187 1 {
188 2 case CHIP_STATION_R:
189 2 Disp_Led(Led_Table[0]);
190 2 break;
191 2 case CHIP_STATION_D1:
192 2 Disp_Led(Led_Table[1]);
193 2 break;
194 2 case CHIP_STATION_D2:
195 2 Disp_Led(Led_Table[2]);
196 2 break;
197 2 case CHIP_STATION_D3:
198 2 Disp_Led(Led_Table[3]);
199 2 break;
200 2 case CHIP_STATION_D4:
201 2 Disp_Led(Led_Table[4]);
202 2 break;
203 2 case CHIP_STATION_D5:
204 2 Disp_Led(Led_Table[5]);
205 2 break;
206 2 case CHIP_STATION_D6:
207 2 Disp_Led(Led_Table[6]);
208 2 break;
209 2 case CHIP_STATION_D7:
210 2 Disp_Led(Led_Table[7]);
211 2 break;
212 2 case CHIP_STATION_D8:
213 2 Disp_Led(Led_Table[8]);
214 2 break;
215 2 }
216 1 }
217
218 void Disp_Loop(BYTE loop)
219 {
220 1 switch (loop)
221 1 {
222 2 case 0:
223 2 Disp_Led(Led_Table[CH_REG_A]);
224 2 break;
225 2 case 1:
226 2 Disp_Led(Led_Table[CH_REG_A]|Led_Table[CH_REG_B]);
227 2 break;
228 2 case 2:
229 2 Disp_Led(Led_Table[CH_REG_A]|Led_Table[CH_REG_B]|Led_Table[CH_REG_C]);
C51 COMPILER V7.50 EEPROMCOPY 08/12/2006 10:29:13 PAGE 5
230 2 break;
231 2 case 3:
232 2 Disp_Led(Led_Table[CH_REG_A]|Led_Table[CH_REG_B]|Led_Table[CH_REG_C]|Led_Table[CH_REG_D]);
233 2 break;
234 2 case 4:
235 2 Disp_Led(Led_Table[CH_REG_A]|Led_Table[CH_REG_B]|Led_Table[CH_REG_C]|Led_Table[CH_REG_D]|Led_Table[CH_RE
-G_E]);
236 2 break;
237 2 case 5:
238 2 Disp_Led(Led_Table[CH_REG_A]|Led_Table[CH_REG_B]|Led_Table[CH_REG_C]|Led_Table[CH_REG_D]|Led_Table[CH_RE
-G_E]|Led_Table[CH_REG_F]);
239 2 break;
240 2 case 6:
241 2 Disp_Led(Led_Table[CH_REG_B]|Led_Table[CH_REG_C]|Led_Table[CH_REG_D]|Led_Table[CH_REG_E]|Led_Table[CH_RE
-G_F]);
242 2 break;
243 2 case 7:
244 2 Disp_Led(Led_Table[CH_REG_C]|Led_Table[CH_REG_D]|Led_Table[CH_REG_E]|Led_Table[CH_REG_F]);
245 2 break;
246 2 case 8:
247 2 Disp_Led(Led_Table[CH_REG_D]|Led_Table[CH_REG_E]|Led_Table[CH_REG_F]);
248 2 break;
249 2 case 9:
250 2 Disp_Led(Led_Table[CH_REG_E]|Led_Table[CH_REG_F]);
251 2 break;
252 2 case 10:
253 2 Disp_Led(Led_Table[CH_REG_F]);
254 2 break;
255 2 case 11:
256 2 Disp_Led(Led_Table[CH_NULL]);
257 2 break;
258 2 }
259 1 }
260 void Copy_Eeprom(void)
261 {
262 1 WORD Eeprom_Pages,Chip_Select;
263 1 BYTE Iic_Select,light_status=0,Scan=Eeprom.wPages_Eeprom/9;
264 1 SetEeprom();
265 1 TurnOnOff_Light(LIGHT_YELLOW);
266 1 wDelayTime=100;
267 1 while (wDelayTime);
268 1 Error_Flag=CHIP_STATION_NO;
269 1 for (Eeprom_Pages=0;Eeprom_Pages<Eeprom.wPages_Eeprom;Eeprom_Pages++)
270 1 {
271 2 TurnOnOff_Light(LIGHT_YELLOW);
272 2 SetIIC_Type(IIC_AT24CXX_R);
273 2 ptGpBuffer=GpBuffer.bytes;
274 2 if (EepromRead(Eeprom_Pages*Eeprom.bBytes_PerPage,Eeprom.bBytes_PerPage))
275 2 {
276 3 Operate_Flag=OPERATE_ER;
277 3 Error_Flag|=CHIP_STATION_R;
278 3 break;
279 3 }
280 2 TurnOnOff_Light(LIGHT_OFF);
281 2 Disp_Led(Led_Table[(Eeprom.wPages_Eeprom-Eeprom_Pages)/Scan]);
282 2 for (Chip_Select=CHIP_STATION_D1,Iic_Select=IIC_AT24CXX_D1;Chip_Select<=CHIP_STATION_D8;Chip_Select<<=1,
-Iic_Select++)
283 2 {
284 3 if ((Chip_Station&Chip_Select)&&((Error_Flag&Chip_Select)==0))
285 3 {
286 4 if (light_status==0)
287 4 {
C51 COMPILER V7.50 EEPROMCOPY 08/12/2006 10:29:13 PAGE 6
288 5 TurnOnOff_Light(LIGHT_YELLOW);
289 5 light_status=1;
290 5 }
291 4 else
292 4 {
293 5 TurnOnOff_Light(LIGHT_OFF);
294 5 light_status=0;
295 5 }
296 4 SetIIC_Type(Iic_Select);
297 4 ptGpBuffer=GpBuffer.bytes;
298 4 if (EepromWrite(Eeprom_Pages*Eeprom.bBytes_PerPage,Eeprom.bBytes_PerPage))
299 4 {
300 5 Operate_Flag=OPERATE_ER;
301 5 Error_Flag|=Chip_Select;
302 5 }
303 4 }
304 3 }
305 2 }
306 1
307 1
308 1 #if 0
for (Chip_Select=CHIP_STATION_D1,Iic_Select=IIC_AT24CXX_D1;Chip_Select<=CHIP_STATION_D8;Chip_Select<<=1,I
-ic_Select++)
{
if (Chip_Station&Chip_Select)
{
Disp_CurLed(Chip_Select);
for (Eeprom_Pages=0;Eeprom_Pages<Eeprom.wPages_Eeprom;Eeprom_Pages++)
{
TurnOnOff_Light(LIGHT_YELLOW);
SetIIC_Type(IIC_AT24CXX_R);
ptGpBuffer=GpBuffer.bytes;
if (EepromRead(Eeprom_Pages*Eeprom.bBytes_PerPage,Eeprom.bBytes_PerPage))
{
Operate_Flag=OPERATE_ER;
Error_Flag|=CHIP_STATION_R;
break;
}
TurnOnOff_Light(LIGHT_OFF);
SetIIC_Type(Iic_Select);
ptGpBuffer=GpBuffer.bytes;
if (EepromWrite(Eeprom_Pages*Eeprom.bBytes_PerPage,Eeprom.bBytes_PerPage))
{
Operate_Flag=OPERATE_ER;
Error_Flag|=Chip_Select;
break;
}
}
}
}
#endif
338 1 if (Error_Flag==CHIP_STATION_NO)
339 1 Operate_Flag=OPERATE_OK;
340 1 }
341
342 void Operate_Eeprom(void)
343 {
344 1 if ((Chip_Station&CHIP_STATION_R)&&(Chip_Station!=CHIP_STATION_R))
345 1 Copy_Eeprom();
346 1 else
347 1 {
348 2 Operate_Flag=OPERATE_ER;
C51 COMPILER V7.50 EEPROMCOPY 08/12/2006 10:29:13 PAGE 7
349 2 Error_Flag=CHIP_STATION_R;
350 2 }
351 1 if (Operate_Flag==OPERATE_OK)
352 1 {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -