Je to již nějaký pátek, co jsem začal experimentovat s jednočipy od firmy Atmel. První větší projekt, do kterého jsem se pustil, byla stavba jednoduchých binárních hodin. Snažil jsem se jít cestou nejmenšího odporu, a tak jsem se pro tento účel rozhodl použít „švába“ s co největším počtem nožiček, abych nemusel řešit multiplexování.
Binární hodiny prezentují čas pomocí 20 diod poskládaných do šesti sloupců a čtyřech řad. Výsledek vypadá následovně.
Čtení času je otázkou zvyku. Z obrázku výše je patrné jak se čtení provádí. Dvojce sloupců zleva doprava reprezentují hodiny, minuty a sekundy. Každá řádka reprezentuje číslo. Zespoda to je 1, 2, 4 a 8. Pro přečtení času je nutné sečíst pro každý sloupec hodnotu svítících řádků.
Co budeme potřebovat:
- ATMEGA16 + patice
- 20 LED diod
- 20 odporů 3k9
- krystal 8MHz
- 2 kondenzátory 22pF
- 2 tlačítka
- prototypovací deska
- pájka
- cín
- drátky
- materiál na šasi (dřevo/plexi – dle libosti)
- USBASP programátor
Primárně bude nutné nahrát do jednočipu program. V mém případě jsem použil linuxové binárky avr-gcc, avr-objcopy a avrdude, které si v případě, že budete nahrávat (nebo i kompilovat) pod linuxem budete muset pro vaší distribuci doinstalovat. ATMEGA16 jsem zapojil do programátoru s oscilátorem a program nahrál spuštěním skriptu compile.sh.
Po úspěšném nahrání bude následovat sestavení součástek na desku.
Rozteče mezi diodami si zvolte dle celkové požadované velikosti hodin. Musím však upozornit na jeden nešvar, který jsem musel při stavbě řešit. Původně jsem chtěl mít čtvercové otvory, ze kterých by diody svítily. Nesehnal jsem však materiál, který by světlo dokázal rovnoměrně rozptýlit a z „kola“ mi udělal rovnoměrný čtverec. Nakonec jsem tedy použil kruhové výřezy. Jinak doporučuji také použít diody s co největším vyzařovacím úhlem.
Pohled zezadu vás již tak neuchvátí 🙂 Přiznám se, že s odpory nebylo od prvopočátku počítáno. Byly dodány až v okamžiku, kdy jsme konstatovali, že by hodiny šly používat i jako lampička. Věřím, že pokud na to budete od začátku myslet, bude váš výstup o 200% lepší. Pro napájení jsem použil samici USB konektoru. Tlačítka vpravo dole slouží k nastavení hodin a minut.
Šasi bylo vyrobeno ze dřeva. Pro rozptýlení světla bylo použito mléčné plexisklo. Celá konstrukce je lepená. Zadní víko bylo uděláno pro lepší přístup bez vrutů pouze na těsno zatlačené. Hodiny byly nakonec natřeny několika vrstvami lesklého černého laku a byl k nim přidán i stojánek. Napájení probíhá pomocí USB nabíječky na telefon.
Nakonec dvě dema.
Původní prototyp bez odporů vs. komerční verze.