Problem s EEPROM u AT89LP52

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

Problem s EEPROM u AT89LP52

#1 Příspěvek 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?.
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#2 Příspěvek 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.
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

#3 Příspěvek 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.
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#4 Příspěvek 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.
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#5 Příspěvek od ZdenekHQ »

Čili v praxi (až na systémové konfigurace apod.) téměř nanic.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

#6 Příspěvek 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.
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

#7 Příspěvek 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".
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#8 Příspěvek 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
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

#9 Příspěvek 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.
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“