
Witam.
Dzisiaj chciałbym zaprezentować mój projekt zegara VFD na lampie IW-18. Jest to kontynuacja wątku kolegi Pier -> Link
Jest to zmodyfikowany w znacznym stopniu soft z dodanym wyświetlaniem godziny, daty oraz temperatury.
Sercem układu jest Atmega8, za układ RTC robi DS1307 wraz z podtrzymywaniem bateryjnym.
Najwięcej czasu zajęło mi pogodzenie przerwań i czujnikiem DS18b20. Okazało się że nie jest to wcale takie trudne. Rozwiązałem to wplatając obsługę DS-a między wyświetlanie poszczególnych "ekranów" na IW-18:
W skrócie wygląda to tak:
-wysyłam dane do czujnika
-pokazuje godzinę na wyświetlaczu
-odbieram dane z czujnika
-pokazuje datę na wyświetlaczu
-konwertuje godzinę na poszczególne moduły tj. dzięsiątki, jedności, oraz ułamek
-pokazuje temperaturę na wyświetlaczu
Obrazowo można to przedstawić w następujący sposób:

Wszystko tak szybko się odbywa że wyświetlacz w ogóle nie miga

Program został napisany w BASCOMie - zajmuje ~64% pamięci Flash.
Sterowanie odbywa się poprzez 2 przyciski (Menu, Incrementuj).
Na płytce znajduję się miejsce pod drugi czujnik DS18b20, ale jak na razie nie mam czasu zaimplementować go w programie.
Program przystosowany jest do wyświetlania temperatur ujemnych i dodatnich.
Obudowy jak na razie nie będzie, bo nie mam oryginalnego pomysłu.
Poniżej kilka zdjęć z układu:









Filmik:
Koszty:
Atmega8 -miałem
2x ULN2804 - 4zł
DS18b20 - miałem
DS1307 - 7zł
Lampa IW-18 - 1,8zł
W sumie: 12,8zł
Zapraszam do komentowania.
Jeżeli zegarek Ci się podoba - zagłosuj na mnie

Pozdrawiam, Duch__.
PS. W załączniku pliki Eagle *.sch i *.brd oraz kod źródłowy *.bas.
Cool? Ranking DIY