Založen: May 22, 2013 Příspěvky: 325 Bydliště: Psáry JN79GW
Zaslal: ne únor 22 2015, 16:30 Předmět: Zálohování registrů při vypnutí napájení
Ahoj,
potřeboval bych při vypnutí napájení ATmega8U zálohovat cca 8 registrů do EEPROM a po obnovení napájení zase tyto registry obnovit. To, co nevím je od jaké události spustit zálohovací funkci. Možná si to vyžádá i nějakou HW úpravu na desce. Napájení CPU je 3.3V. Neřešil už někdo tento problém?
Díky _________________ Jirka
Nevím jak ATmel,ale PIC 18F... to umí událostí přerušení.U mcu,který to neumí se to řeší podržením napájení kondenzátorem,před kterým je dioda a před diodou je sledováno přítomnost napětí.Velikost kondenzátoru se volí podle potřeby.Na ATmel to lze použít taky.
schéma pro inspiraci
Založen: May 22, 2013 Příspěvky: 325 Bydliště: Psáry JN79GW
Zaslal: ne únor 22 2015, 17:05 Předmět:
Díky. Vzít si vzorek napájení před stabilizátorem 3.3 V, to je přesně to jednoduché a spolehlivé řešení, které mě nenapadlo. Nicméně, kdyby bylo možno vyřešit problém čiste SW, tak bych byl radši. Deska už je hotová a na tohle jsem zapomněl. _________________ Jirka
Založen: Apr 02, 2011 Příspěvky: 18174 Bydliště: Nový Bydžov
Zaslal: ne únor 22 2015, 17:50 Předmět:
Spíš bych si spočítal jestli filtrace udrží procík v chodu než se zapíše těch 8 registrů. Já jsem na 89C52 potřeboval uložit po intervenci z dohlížecího MAXe 4 registry do Timekeeperu (zálohovaná paralelní RAM) a byl to celkem problém, na 5V jsem musel naložit elyt 4G aby to makalo spolehlivě.
Jirka
Založen: Jan 14, 2014 Příspěvky: 610 Bydliště: Ašsko
Zaslal: ne únor 22 2015, 18:11 Předmět:
"Čistě" softwarově nepoznáš, že je vypnuté napájení, procesor to sice pozná, ale generuje vnitřní signál reset. Jedině testovat přítomnost napájení nebo přerušení, viz výš.
Já ukládám důležité registry při změně, ale to nesmí být časté změny. Například zvolený typ činnosti uživatelem apod., kvůli omezenému počtu zápisů a spotřebovanému času.
Jirka
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: po únor 23 2015, 23:06 Předmět:
FRAM může být taky cesta (FM24C64). V nouzi jsem ji použil i jako RAM. _________________ 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[?]
FRAM taky pouzivam, pro par registru staci treby fram ktera byva soucasti RTC apod.
Pokud je zarizeni napajeno sitove a mam potrebu zalohovat pri vypadku, pouziju klasicke trafo a sleduju vypadky pulvln hned za trafem, je to rychlejsi nez cekat na pokles napeti.
Založen: Apr 02, 2011 Příspěvky: 18174 Bydliště: Nový Bydžov
Zaslal: út únor 24 2015, 18:14 Předmět:
ZdenekHQ napsal(a):
FRAM může být taky cesta (FM24C64). V nouzi jsem ji použil i jako RAM.
Nacpat v poklesu při výpadku něco do sériový paměti? Já s bídou stíhal 4 byty u paralelní a to mi Max hodil přerušení už při cca 8V, na vstupu napájecí 7805.
Jirka
Založen: Sep 10,
2004 Příspěvky: 19662 Bydliště: Jičín, Český ráj
Zaslal: út únor 24 2015, 19:40 Předmět:
Na to, aby ti 7805 udržela 5 V na výstupu, potřebuje na vstupu nejméně 7,6 V, když takovou z většího počtu kusů vybereš (naprostá většina jich ale potřebuje 8 V a víc).
V každém případě je nutné vyhodnotit přítomnost střídaviny na trafu a identifikovat její absenci co nejrychleji, aby procesor co nejdříve začal ukládat zálohu a zbyl mu čas na to, uložit všechny registry, než mu dojde šťáva.
Pro zálohování kontrolérů na bázi Z80CPU se používaly NiCd akumulátory, některé dokonce měly časovač s 555, který "podržel" otevřený tranzistor nebo sepnuté relé a dal procesoru asi 10 vteřin na uložení, a pak baterii odpojil. _________________ Těm, kdo si nevybírají odpovědi na soukromé zprávy, už příště neodpovím. Tak.
Založen: May 22, 2013 Příspěvky: 325 Bydliště: Psáry JN79GW
Zaslal: út únor 24 2015, 20:33 Předmět:
Díky za rady. Z toho, co tu padlo se mě zdá nejjednodušší, vzít si vzorek napájení před stabilizátorem a monitorovat ho na volném analogovém vstupu. Za stabilizátor dát pořádny elyt aby bylo dost času pro zápis. Mezi tím jsem program drobet zoptimalizoval, tak mě bude stačit zálohovat pouze 4 registry. Má někdo zkušenosti kolik budu na to potřebovat času?
Díky. _________________ Jirka
Založen: Jan 14, 2014 Příspěvky: 610 Bydliště: Ašsko
Zaslal: út únor 24 2015, 21:25 Předmět:
V assembleru samotný zápis trvá cca 18 cyklů (vnitřní oscilátor 1MHz nebo 9,6MHz Tiny13); používám na rozdíl od datasheetu navíc 4x nop; ale k tomu musíš připočíst cykly pro obsluhu přerušení, nastavení adres a návrat, pokud budeš zapisovat stejnou sekvencí příkazů 4x. Asi by bylo rychlejší zpracování zapsat sekvenci 4x za sebou a adresu EEPROM zvyšovat inkrementací.
Určitá neznámá může být v čekání na dokončení předchozího zápisu v registru EECR, protože zápis trvá delší dobu, V datasheetech jsou uváděny časy zápisů v jednotkách ms (podle typu MCU, způsobu zápisu a hodinovém kmitočtu).
Také bude důležitá rychlost detekce chybějícího napájení a její spolehlivost.
Jirka
Edit: lesana87 byl rychlejší a stručnější
Na děvčata tu nejsme moc zvyklí Čistě technicky, elyt by byl výhodnější před stabilizátorem, za ním na něm začne napětí velice rychle klesat a není tam žádná rezerva, monitorovat tu střídavinu. _________________ Věci,které fungují,se ZÁSADNĚ neopravují...
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: út únor 24 2015, 23:09 Předmět:
Celeron napsal(a):
ZdenekHQ napsal(a):
FRAM může být taky cesta (FM24C64). V nouzi jsem ji použil i jako RAM.
Nacpat v poklesu při výpadku něco do sériový paměti? Já s bídou stíhal 4 byty u paralelní a to mi Max hodil přerušení už při cca 8V, na vstupu napájecí 7805.
Jirka
Ale FRAM nepotřebuje žádný čas na zápis, nasypeš to tam tak rychle, jak Ti dovolí I2C, t.j. 16byte řádově ve stovkách us. _________________ 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[?]
Č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ímají 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í žádný 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 či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.