Zaslal: st červen 30 2010, 19:12 Předmět: Atmel, uložení do eeprom při vypnutí
Ahoj, potřeboval bych poradit ohledně amtelu a eeprom. Potřebuju měřit několik veličin a výsledky si ukládat do eeprom a při spuštění vždy načíst veličiny a pokračovat v měření... Vím že eeprom má omezený počet zápisů ale nevím jak to co nejelegantněji vyřešit. Potřebuju uložit co nejvíce vzorků takže buďto uložit do eeprom každou 1s což mi příjde jako ničení té paměti... nebo mě napadlo uložit do paměti data při vypnutí napájení - napětí měřím převodníkem. Pokoušel jsem se to udělat tak že k napájení procesoru jsem připojil kondenzátor 1000uF a oddělil diodou aby se nevybil do zbytku obvodu ale nemá to velkého účinku... data se při poklesu napětí někdy uloží a někdy ne... záleží asi ve které části programu se zrovna nachází.
Máte někdo nějaký jiný nápad jak to udělat? Nebo jestli snad už existuje nějaký standardní způsob jak to řešit?
Moc jsem to nepobral. Do eeprom přece ukládám, když já potřebuji. Takže pokud má eeprom 1000000 zápisů, spočítám si jak často potřebuji ukládat, aby mi procesor vydržel třeba 2 roky. Nebo přidám externí paměť do patice, až dojde životnost vyměním za další kus a jedu dál.
Proč po vypnutí? Proč si neuchovat poslední změřený vzorek hlídat napětí a když napětí z nějakého důvodu vypadne, dál neukládat. A pokud je potřeba uchovat poslední naměřenou veličinu, kondenzátor musí na dobu zápisu vystačit. Holt je to potřeba v programu ošetřit, aby po vypnutí napětí přerušil aktuální běh a začal zapisovat do eeprom.
Proč nedefinuješ vypnutí přístroje tak, aby před vypnutím uložil žádané hodnoty z pracovní paměti do eeprom?
Kdo to vypne natvrdo, tak prostě o poslední data přijde.
přístroj se vypíná vypnutím napájecího napětí... procesor neví kdy to bude... v procesoru měřím v hlavní smyčce napětí a když poklesne měly by se data uložit... problém je asi v tom že zbytek hl. programu je docela výpočetně náročný takže i při kapacitě 1000uF se málokdy stačí vše uložit
spočítal jsem že když bych ukládal každou sekundu měla by být výdrž asi 11dní nepřetržitého provozu což není zas tak hrozné číslo...
je to do auta a potřebuju ukládat ujetou vzdálenost, čas, a celkovou dobu vstřiku...
přičemž tyto hodnoty se neustále inkrementují abych při každém nastartování nejel od nuly
edit. teď mě napadlo ještě že by se to dalo řešit jiným přístupem... uložit hodnoty pokaždé když rychlost klesne na nulu... ve městěch by počet uložení sice taky byl asi dost velký ale oproti uložení co 1s je to podstatný rozdíl
Tohle bych řešil pomocí statické RAM a záložní baterie(aku) pro uP a tu paměť. Potom při poklesu napětí zastavit program(nebo uspat uP), pokačovat bude zase až při normálním napětí.
páni to jsem ani nevěděl ža takové kondenzátory existují díky za tip to bude asi nejschůdnější cesta, zkusím se po nich v ostravě podívat
jinak mě ještě napadla možnost ukládat každých ujetých 100m (což určitě stačí) a pak by byla životnost 100 000km a to se už blíží zbývající životnosti aut do kterých by to bylo určené (felicie)
edit: tak u nás mají kondenzátory E100G (0.1F???) za 32,- což stojí za zkoušku. Může být na 5.5V když používám klasické 5V napájení? To je asi celkem na hraně nee?
aby pak řešil ztrátu údajů jako při nechtěném odpojení autorádia?
Jestli tomu rozumím, tak se jedná o údaje v rozsahu několika bajtů, ty se přece můžou normálně v provozu inkrementovat v RAMce a po skončení provozu uschovat do EEPROM, a po zapnutí zas načíst. Proč to komplikovat nějakým vyhodnocováním rychlosti, trvalým napájením a podobnýma komplikacema?
Časy uváděny v GMT + 1 hodina Jdi na stránku 1, 2Další
Strana 1 z 2
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímájí záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žáden zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva, kontaktujte administrátora a on sjedná nápravu.