<div dir="ltr"><div><div><br></div>U subj. dlouhou dobu používám jednoduchý program na čtení z EEPROM. Chodilo to léta,<br></div>ale teď po provedených úpravách SW, které se nijak netýkají této oblasti, mám potíže <br>se čtením konfiguračních dat z EEPROM. Mám tam uložených 12 bytů a cca po jednom dni provozu mi to začne místo uložených dat číst samé nuly. Ostatní funkce programu běží normálně. Stačí procesor zresetovat ( jen resetem, ne napájením ) a data to čte zase dobře.Program pro čtení je opsaný z příručky k RD2 kitu od HW shopu a nedoznal během úprav žádných změn.<br>
<div><div><br></div><div>Vypadá takto : <br><br>BYTE ReadEEPromByte(WORD addr)<br>{ data BYTE val;<br> while(EECON&EEBUSY){}; // wait until eeprom programming busy flag set<br> EECON |= EEE; // enable eeprom space<br>
val = XBYTE[addr]; // read byte<br> EECON &= ~EEE; // disable eeprom space<br> return val;<br><br></div><div>Předpokládám, že chyba je někde v mém SW, který tam něco zablokuje, ale vzhledem k tomu, že ten můj SW běhá jen v sekundové smyčce, vůbec nevím jak to mám hledat, protože chyba se opravdu projeví vždycky až za několik hodin provozu.<br>
<br></div><div>Nevíte na co se podívat ? <br></div><div><br>-- <br>Zdravi<br>Jirka OK1MWW
</div></div></div>