Stránka 1 z 1

Problem s EEPROM u AT89LP52

Napsal: 07 črc 2011, 20:21
od termit256
Tenhle MCU ma tusim 256B EEPROM pameti a nejak se mi nedari rozumne do ni zapisovat. Bud prepisu napr z FF na 00, ale pak znovu FF na tu samou adresu zapsat nejde, jako by se obsah buky pred zapisem "nesmazal" a nebo nastavim bit AERS, pak uz to jde, ale pred zapisem jakehokoliv bajtu to smaze celou stranku (128B) coz mi prijde hloupe.

Opravdu to takhle fuguje?
Nebo uz mi to z horka nemysli?.

Napsal: 07 črc 2011, 20:29
od Andrea
To je problém se podívat do datašítu? Pokud je mi známo, tak je to paměť FLASH EEPROM a ta se maže po stránkách.

Napsal: 08 črc 2011, 07:26
od termit256
Zbezne jsem to prolit, ale je to moc cteni a chtel jsem mit jistotu ze jsem neco neprehlid.
Prepisuju program puvodne pro AT89S8252 ktery uz se nevyrabi na tyhle zazraky. Bude s tim asi vic prace nez jsem cekal.

Napsal: 08 črc 2011, 14:01
od Andrea
FDATA uses flash memory with a page-based programming model. Flash data memory differs from traditional EEPROM data memory in the method of writing data. EEPROM generally can update a single byte with any value. Flash memory splits programming into write and erase operations. A Flash write can only program zeroes, i.e change ones into zeroes (). Any ones in the write data are ignored. A Flash erase sets an entire page of data to ones so that all bytes become FFH. Therefore after an erase, each byte in the page can only be written once with any possible value.

Napsal: 08 črc 2011, 14:55
od ZdenekHQ
Čili v praxi (až na systémové konfigurace apod.) téměř nanic.

Napsal: 08 črc 2011, 18:49
od termit256
Taky mi prijde pouziti flash u takoveho MCU nestastne. Asi zkopiruju stranku do RAM, udelam zmeny a ulozim zpet. Nastesti toho neukladam tolik a RAM a casu je pomerne dost.
V DS jsem videl zminku o nejakem bufferu pro zapis, ale nenapada me jak ho pouzit pro cteni a jak se do nej dostat a tak pro tohle bude asi nepouzitely.

Napsal: 08 črc 2011, 19:22
od termit256
Sakrys, ted jsem si vsiml, ze pamet ma zivotnost jen 10.000 cyklu.
Je asi opravdu lepsi nejdriv pocist DS a az pak neco delat, jak podotkla Andrea.
Ted s tim budu muset pracne nejak "vyjebavat".

Napsal: 10 črc 2011, 10:26
od ZdenekHQ
No co, vyrob sendvič. Na pouzdro procesoru naletuj zvrchu třeba FM24C64 a můžeš přepisovat téměř do nekonečna. Snad tam nějaká noha zůstala volná. :D

Napsal: 11 črc 2011, 16:31
od termit256
No to je taky reseni.
Ja potrebuju ukladat jen par bajtu a tak je honim dokola po pameti a vymazu az kdyz je pamet plna. Takhle se mi podarilo snizit frekvenci mazani cca 30x a to uz pro planovanou zivotnost s prehledem staci. Podobne to delaji radice u flashdisku k PC.