Witam wszystkich.
Chciałem podzielić się z wszystkimi moją nową konstrukcją.
Jest to zegar LED z obsługą jednego czujnika DS18B20.
Nie jestem autorem softu od zera. Dokonałem tylko modyfikacji.
Oto co zmieniłem:
- dodałem obsługę jednego czujnika DS18B20
- wyeliminowałem problem słabego świecenia wyświetlaczy
- wyeliminowałem z kodu przestarzałe już instrukcje
- usunąłem podtrzymanie bateryjne
- zmniejszyłem częstotliwość migania kropki (zmiana stanu co sekundę)
Aby wyświetlacze świeciły jaśniej, emitery zostały zasilone z przetwornicy napięcia opartej o układ LM2596 (układy te można tanio kupić w Chinach z darmową przesyłką) ustawionej na
7,5V. Dodatkowo zostały zmienione tranzystory na BC327-40 (mogą być BC327-25) dodane diody na bazy, oraz rezystory między bazami, a emiterami.
Przy zastosowaniu filtra (użyłem dymionej plexi) wszystko na wyświetlaczach widać bardzo dobrze zarówno w nocy, jak i w słoneczny dzień.
Cały układ zasilam z zasilacza
12V i taki zasilacz zalecam.
Uwaga. Gdy ktoś programuje procesor w układzie, na czas programowania należy odpiąć/wylutować czujnik temperatury, gdyż "przeszkadza" on w programowaniu.
Działanie: układ na zmianę pokazuje czas i temperaturę. Temperatura pokazywana jest przez 2 sekundy co 8 sekund. Czas ten można bardzo prosto zmienić sobie wg upodobań w kodzie głównym programu. Trzy przyciski służą do ustawiania godzin, minut oraz resetowania sekund.
Atmega8 taktowana z wewnętrznego rezonatora
8MHz, timer działa w trybie asynchronicznym z zewnętrznego kwarcu 32768Hz.
Zdjęcia:
W załączniku zamieszczam program (w języku C wraz z biblioteką do DS'a oraz skompilowany *.hex) oraz płytkę pcb w *.pdf'ie.
Życzę powodzenia wszystkim początkującym elektronikom, w razie czego służę pomocą.
Pozdrawiam, szczęśliwego nowego roku!