Hirdetés

Új hozzászólás Aktív témák

  • Harcipocok84

    tag

    válasz Aryes #19329 üzenetére

    Sajnos pont az a bajom, hogy nem tudom reprodukálni és zavar, hogy nem tudom miért történt. Programozási hiba talán kizárva. Az EEPROM címek nem fedik egymást, és egyik változó sem akar a másik EEPROM mezőjébe írni. A menthető értékek ahogy írtam maximalizálva vannak, tehát még 150 felé sem mehetett volan az érték, mert ha értékadás utána 150 feletti az érték akkor 150-re visszaírja és csak ezután történik az EEPROM-ba írás.
    Az hogy a szóban fordó EEPROM cím "elhasználódott" kizárt, mert max. 100-200db írás történhetett rá eddig. Bár én ha jól tudom az olvasás is bele számít az elhasználódásba, nem tudom hogy igaz-e...

    Működött szépen az eszköz, menet közben átírtam az adott értéket 100-ról 120-ra, elmentettem az EEPROM-ba, majd az eszköz működött szépen tovább. Hozzáteszem mentés utána újra beolvassa az értékeke és ebből dolgozik tovább, tehát a mentéskor még jó érték volt benne, és visszaolvasáskor is jó volt.
    Majd jött egy áramtalanítás,elindult az eszköz, setup részben beolvastam újra mindent, és ott már a rossz érték volt. Visszaírtam az értéket 120-ra, újra elmentettem, majd újabb áramtalanítás után megtartotta a jó értéket, és azóta is jól működik áramtalanítás után is.

    Egyszer hülyüt meg.... És ez nagyon zavaró...

    Esetleg egy öteletem van: a felhasználó szerint, volt egy olyan pillanat, amikor bekapcsolta, majd szinte azonnal ki is kapcsolta.

    - Elképzelhető olyan, hogy pont olvasta azt az adott EEPROM címet amikor hirtelen kapott egy áramtalanítást, így az "megsérült"? Olvasás tönkre tudja tenni a cím tartalmát ha idő előtt befejeződik?
    - Olvastam valamit a Brown-out-ról, hogy talán pont az ilyen dolgok ellen véd? Hogy ha éppen EEPROM művelet zajlik, és megszűnik a táp akkor előtte befejez minden EEPROM műveletet? DE NEM AKARLAK EZZEL megvezetni, lehet semmi köze hozzá...

Új hozzászólás Aktív témák