Hodiny s Atmega8
Moderátor: Moderátoři
Z toho co píšeš nejsem moc moudrý, ale hodiny se napájí 5V, jako záložní baterii jsem použil CR2032 (3V) a nevím co myslíš "frekvencí hodin". V zapojení je krystal 14,7456MHz a Atmega bere frekvenci z tohoto krystalu (fuses L-FF, H-C9).
https://ok1kvk.cz/clanek/2010/digitalni ... s-atmega8/
https://ok1kvk.cz/clanek/2010/digitalni ... s-atmega8/
Tou frekvencí hodin myslím takt procesoru, v tvém případě je to těch 14,7456 MHz. Čím vyšší napájecí napětí a frekvence, tím větší spotřeba.
MCU má možnost uspání, kdy má sníženou spotřebu. A u těch hodin MCU většinu času jen hlídá tlačítka (a teď i napájení), přitom by mohl být uspán.
Starší, ale stále pěkná kniha je Programujeme AVR v jazyku C od Ondřeje Závodského. Pro začátek vřele doporučuji. Najdeš tam i režimy spánku MCU.
MCU má možnost uspání, kdy má sníženou spotřebu. A u těch hodin MCU většinu času jen hlídá tlačítka (a teď i napájení), přitom by mohl být uspán.
Starší, ale stále pěkná kniha je Programujeme AVR v jazyku C od Ondřeje Závodského. Pro začátek vřele doporučuji. Najdeš tam i režimy spánku MCU.
Testování tlačítek při vypnutém displeji je stejně hloupost.
Udělal jsem si ještě teploměr skoro stejné konstrukce jako hodiny (ze stejného webu) a mám velmi malé displeje na obě konstrukce a chci si je dát do auta. Takže bych musel při každém nastartování nastavovat hodiny. Proto řeším tuto zálohu z baterie. A nebo by pořád byly v chodu i s teploměrem na autobaterii. I když je to baterie s velkou kapacitou, nevím jak by se vybíjela, když bych chtěl jet třeba až po delší době (týden, dva, tři....)
Udělal jsem si ještě teploměr skoro stejné konstrukce jako hodiny (ze stejného webu) a mám velmi malé displeje na obě konstrukce a chci si je dát do auta. Takže bych musel při každém nastartování nastavovat hodiny. Proto řeším tuto zálohu z baterie. A nebo by pořád byly v chodu i s teploměrem na autobaterii. I když je to baterie s velkou kapacitou, nevím jak by se vybíjela, když bych chtěl jet třeba až po delší době (týden, dva, tři....)
Nijak, MCU pak může využívat svůj vnitřní oscilátor. Přesnost času na něm nebude záviset. Komunikuje s RTC přes I²C. RTC si můžeš představit jako paměť, ve které se aktualizují data dle reálného času. MCU jednou za zvolenou dobu z RTC přečte reálný čas. Po odpojení napájení "jede" RTC obvod na baterii.
Případně spíš vyber DS3231, je přesnější.
Případně spíš vyber DS3231, je přesnější.
Tak jsem tady zpátky. Myslel jsem, že dokážu hodiny doplnit o RTC obvod, ale velice jsem se mýlil. Po konstrukční stránce bez problémů, ale neumím upravit kód tak, aby spolu MCU a DS1307 komunikovali.
Nejste-li z mých dotazů začátečníka v "C" unaveni a nebo najde-li se někdo jiný kdo by mi pomohl až do fáze plné funkčnosti, tak napište a pomozte prosím.
Díky
Nejste-li z mých dotazů začátečníka v "C" unaveni a nebo najde-li se někdo jiný kdo by mi pomohl až do fáze plné funkčnosti, tak napište a pomozte prosím.
Díky
Protože tě, dle mého názoru a nic ve zlém, trochu zavedl. Řešil jsi jednoduchý problém a vyřešil jsi ho v daném kontextu ke spokojenosti. "Jalový chod" MCU nevadí když to MCU prostě odměřuje čas, a dělat tam nějaké uspávání a přidávat kvůli tomu RTC je prostě už měnění toho kontextu a jiná konstrukce. Já bych to nehrotil. S RTC si stejně moc nepomůžeš, protože i to potřebuje záložní baterku, nějakou kontrolu atd. Nestačí výdrž? Lze dát místo CR2032 třeba dva nebo tři alkalické AAA články do držáku a je to taky řešení. Když máš červený, tak za mě třeba například použít nějaký SRWA displej (vysokosvítivý) a nechat segmenty svítit na málo, tím dosáhneš lepšího výsledku co se týče úspory (proudu i času) daleko jednodušeji.
Díky za reakci Mahoney. Takže myslíš, že nemá smysl se v tom vrtat? Mě taky napadlo, že by se to zapojení i s kódem muselo trochu víc překopat. Jen jsem doufal, že někdo bude vědět o nějakém použitelném řešení, ale moje požadavky a tahle konstrukce asi takové řešení nemají.
Použil jsem malinký displej zeleně svítící ze settopboxu, aby to celkově v autě nezabralo moc místa.
Použil jsem malinký displej zeleně svítící ze settopboxu, aby to celkově v autě nezabralo moc místa.