Hodiny s budíkem
Díky použití jednočipu velmi jednoduchá a levná konstrukce. Popis zapojení Displej pracuje díky nedostatku vývodů procesoru v multiplexním režimu, což znamená, že vždy svítí jen jedna číslicovka. Všechny elektrody displejů jsou spojeny paralelně a přepíná se pouze společná anoda. Mimo jiné to i zjednodušuje návrh plošného spoje. Původní hodiny jsem v rámci experimentování doplnil ještě o budík. Při aktivaci budíku se jednak generuje přerušovaný tón o kmitočtu přibližně 1.6kHz a také výstup P1.1 přejde v log. 0. Výstup s tónem je proudově posílen tranzistorem, takže lze připojit přímo reproduktor s impedancí raději větší než 8ohmů. Místo reproduktoru lze připojit i piezoměnič, jehož kapacita by se však spínáním tranzistoru pouze nabila a negeneroval by dále tón, takže je paralelně k němu připojen vybíjecí rezistor. Doba po kterou je budík aktivní se dá nastavit od 1 do 255 vteřin úpravou zdrojáku (standardně je to 20s). Program je vyřešen tak, aby bylo možné připojit displeje se společnou katodou i anodou. Volba displeje se provádí vývodem P1.0 (log.0 pro společné anody a log.1 pro společné katody). Spínací tranzistory pak budou zapojeny podle obrázku níže. Přesnost hodin je díky programové kalibraci daná pouze krystalem a ty mají v dnešní době kmitočet velmi přesný. 5V stabilizátor lze z obvodu vyřadit a napájet obvod libovolným stabilizovaným zdrojem, ale upozorňuji, že napětí vyšší než 7V procesor témě určitě zničí. Nastavení Kalibraci lze provádět buď programově úpravou konstant "Kalibrace1" a "Kalibrace2" ve zdrojovém kódu nebo nahradit jeden z kondenzátorů kolem krystalu za kapacitní trimr s kapacitou asi 47pF a seřídit hodiny úpravou kmitočtu krystalu. V obou případech to zabere docela dost času. Vždy to chche nastavení trochu změnit, nastavit čas a čekat na odchylku. Ovládání K ovládání slouží 3 tlačítka. Stiskem SET se vstoupí do nastavení budíku, místo vteřin je zobrazeno "AL". Blikání údaje signalizuje vypnutý budík. Aktivuje se dlouhým stiskem SET a stejně se dá i vypnout. Aktivuje se rovněž stiskem libovolného z nastavovacíh tlačítek + a -. Při podržení + nebo - se čas přičítá automaticky a postupně zrychluje, aby nastavování netrvalo příliš dlouho. Krátkým stiskem SET se nastavení budíku opouští vstupuje se do nastavení času. Údaj nejprve bliká a stiskem SET se beze změny času vrací zpět do normálního zobrazení času. Pokud dojde ke stisku + nebo -, údaj přestane blikat a vynulují se vteřiny. Dalším stiskem SET se nastaví nový čas. Závěrem upozorňuji, že díky zákmitům tlačítek občas dojde k dvojitému stisku. Problém se mi povedlo jen částečně programově odstranit. Program pro jednočip
Několik věcí, které si zájemce může editovat, jsou na začátku zdrojového kódu a jsou u nich popisky.
Patří sem 2 konstanty pro programové nastavení přesnosti a doba sepnutí budíku.
Dále jsou zde konstanty určující vlastnosti tlačítkového ovládání.
Počáteční stav hodin a budíku se nastavuje níže v inicializaci.
Do zbytku kódu raději nedoporučuji zasahovat. (c) 2004, Stanislav Mašláň - využití programu ke komerčním účelům bez souhlasu autora není dovoleno.
Poslední aktualizace: 22.7.2004 |