![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/37_1217281242_thumb.jpg)
Dzisiaj chciałbym przedstawić zegarek który zrobiłem dla swojej drugiej połówki.
Zegarek powstawał przez prawie 3 tygodnie, w głównej mierze przez dopracowywanie softu napisanego w Bascomie - zajmuje 8190 bajtów. Ostatnie 4 dni zajęła mi obudowa. Ale po kolej.
Sercem układu jest Atmega8, która odpowiada za obsługę wyświetlacza, 3 przycisków, 2 czujników DS18b20, magistrali I2C (PCF8583)oraz sterowania układem Attiny2313.
RGB:
Obsługą RGB zajmuje się Attiny i jest sterowana z atmegi przez 3 linie (nie ma bezpośredniej wymiany danych między układami) mianowicie 1 linia jest podana na Reset w Attiny, i podając stan niski resetuje attiny (podświetlanie RGB nie działa). Kiedy podam stan wysoki to RGB rusza. Pozostałe 2 linie służą do wyboru 1 z 3 trybów pracy RGB:
- Tęcza (Płynne przechodzenie od koloru do koloru według ustalonej kolejności);
- Płynne losowe (program losuje 1 kolor z 1mln a następnie go wyświetla płynnie przechodząc z poprzedniego koloru);
- Skokowo (program losuje 1 kolor z 1mln a następnie go wyświetla skokowo przechodząc z poprzedniego koloru).
RGB na razie jest z 3 diod LED (płytka ma możliwość podłączenia 6 diód czyli 2 diód RGB) Docelowo jak uda mi się dostać diody ze wspólną Anodą to zrobię to na 2 diodach RGB super flux.
Czas i data:
Zegar oraz dzień i miesiąc przechowywane są w PCF8583, który na wypadek zaniku napięcia podtrzymywany jest bateryjnie. Rok zapisywany jest w pamięci EEPROM Atmegi8. Może on liczyć do 100 lat (0 do 99).
Podświetlanie LCD:
W atmedze wykorzystałem sterowanie jasnością podświetlania wyświetlacza za pomocą sprzętowego PWM-a.
Podświetlanie ograniczone jest programowo do 200 (normalnie do 255), z tego powodu gdyż żeby wyświetlić wartość podświetlania w procentach to łatwo się dzieli 255 przez 2,55, natomiast dzieląc 254 przez 2,55 powstaje niezły ułamek który trudno zaokrąglić programowo. Dlatego ograniczyłem PWM do 200 aby można było podzielić łatwo przez 2. Różnicy w podświetlaniu były minimalne. Wartość PWM przechowywane jest w EEPROMie.
Temperatura max i min:
Z początku chciałem przechowywać te dane w pamięci EEPROM ale liczyło by się to z szybkim "uszkodzeniem" tej pamięci, gdyż można wykonać ~ 100 000 zapisów, a niestety ale temp, szybko się zmienia, dlatego też wartość temperatury max i min trzymam w pamięci SRAM-owej. O godzinie 23:59:59 jest ona resetowana - mam wskazania dobowe.
Symbol domu i dworu:
O domu to nie będę pisał, natomiast napisze o dworze. Symbol ten zmienia się o godzinie 21 z takiego:
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/7_1217279356_thumb.jpg)
na taki:
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/44_1217279393_thumb.jpg)
co sygnalizuje odpowiednio dzień i noc. Powtórna zmiana następuje o godzinie 6 rano.
Obudowa:
Obudowa została wykonana z jednego kawałka drewna, który wydrążyłem w środku przy pomocy młotka i dłuta. Polakierowałem ją 3 warstwami lakieru bezbarwnego. Tylni panel został wykonany z kawałka plexi (niestety był porysowany to go zmatowiłem przy pomocy papieru ściernego).
Schemat:
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/60_1217282267_thumb.jpg)
Filmik z pracy układu:
Trochę zdjęć:
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/44_1217280484_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/94_1217280532_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/46_1217280640_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/63_1217280676_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/37_1217281242_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/43_1217281267_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/77_1217281358_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/47_1217281378_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/66_1217281401_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/11_1217281420_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/37_1217281437_thumb.jpg)
![Zegar [z] serce[m] by Duch Zegar [z] serce[m] by Duch](https://obrazki.elektroda.pl/92_1217281453_thumb.jpg)
Koszty:
LCD - 13zł + 5zł przesyłka
PCF8583 - przez brak kompetencji sprzedającego dostałem za darmo

Atmega8 - miałem (5zł)
Attiny2313 - miałem (3zł)
Obudowa - bezcenna

LEDy - 0,90 zł
Długie swiche - 2zł
PCB + B327 - 12zł
Lakier bezbarwny - 15zł
Razem: 47,90zł (65,90zł)
Z chęcią odpowiem na wszystkie pytania.
Pozdrawiam, Duch__
PS. Dziewczyna dostanie to jako prezent 25 sierpnia jak wróci z Holi

---------------------------------------------------------------
Z początku nie chciałem udostępniać materiałów, ale to zrobię (trochę nad tym siedziałem, więc mała prowizja). Format plików *.bas (Bascom), *.sch, *.brd (Eagle).
Cool? Ranking DIY