- Napięcie zasilania: 7...9 V
- Prąd obciążenia: 100 mA
- Źródło napięcia podtrzymania zegara RTC: bateria CR1220
- Prąd podtrzymania zegara RTC: 1 μA
- Zakres pomiarowy wbudowanego termometru: 0...55°C
- Dokładność pomiaru temperatury: 0,5°C
- Rozdzielczość pomiaru temperatury: 0,5/0,1°C (w zależności od rodzaju zastosowanego termometru scalonego)
Na potrzeby urządzenia zaprojektowano kompaktową, dwustronną płytkę drukowaną ze zdecydowaną przewagą elementów SMD lutowanych po obu stronach laminatu. Montaż urządzenia rozpoczynamy od warstwy BOTTOM, gdzie w pierwszej kolejności przylutowujemy wszystkie półprzewodniki. Proces ten najłatwiej wykonać przy użyciu stacji lutowniczej na gorące powietrze (tzw. hot-air) i odpowiednich stopów lutowniczych. Jeśli jednak nie dysponujemy tego rodzaju sprzętem, można również zastosować metodę „zastępczą” z użyciem typowej stacji kolbowej i plecionki rozlutowniczej. Następnie lutujemy elementy bierne, po czym przechodzimy na warstwę TOP. Tutaj, inaczej niż poprzednio, w pierwszej kolejności przylutowujemy wszystkie elementy bierne, następnie montujemy rezonator kwarcowy, układ RTC (U1), gniazdo baterii CR1220 (BATT) a na samym końcu elementy LED (wyświetlacze matrycowe i diody LED → w jednej płaszczyźnie) oraz przyciski PREV, NEXT, DOWN i UP. W tym momencie wracamy na warstwę BOTTOM i montujemy (wsuwając w dedykowany otwór) gniazdo zasilające JACK, unieruchamiając je za pomocą wkrętów M2. Zaciski gniazda podłączamy za pomocą dwóch, krótkich przewodów (zachowując stosowną polaryzację) do pól lutowniczych VIN i GND po stronie TOP na obwodzie drukowanym. Na tym etapie urządzenie gotowe jest do uruchomienia.
Jak można zauważyć, zastosowano czarną soldermaskę – i to nie bez powodu. Obwód drukowany urządzenia zamontowany będzie w efektownej obudowie wykonanej w technologii druku 3D, w której płytę czołową stanowić ma przydymiona pleksi przesłaniająca zarówno wyświetlacz, jak i pozostałe elementy zamontowane PCB. Zależało mi, aby maksymalnie ukryć „wnętrzności” urządzenia – stąd pomysł na tego typu rozwiązanie, które w praktyce okazało się skuteczne.
Omówiliśmy kwestie montażowe, przejdźmy zatem do tematu obsługi naszego urządzenia. Zgodnie z tym, o czym wspomniałem już wcześniej, w tym celu przewidziano 4 przyciski funkcyjne umownie oznaczone jako ←, →, ↑, ↓ – lub inaczej PREV, NEXT, UP, DOWN. Jak łatwo się domyślić, przyciski PREV i NEXT służą głównie do poruszania się po menu urządzenia, w tym do wyboru ustawień poddawanych regulacji (w menu ustawień urządzenia), zaś przyciski UP i DOWN przeznaczone są z zasady do regulacji wartości tych ustawień.
Niemniej jednak bieżąca funkcjonalność wszystkich przycisków zależy w dużej mierze od miejsca w systemie menu, w jakim znajduje się urządzenie. Ponadto – biorąc pod uwagę, iż rozpoznawane jest zarówno krótkie, jak i długie naciśnięcie każdego z nich – nie sposób skrótowo opisać tego zagadnienia.
W ramach funkcjonalności zegara przewidziano dodatkowe menu nazwane THERMO, dzięki któremu możemy wyświetlić temperaturę mierzoną przez urządzenie. Jest to możliwe wyłącznie wtedy, gdy do wyprowadzenia UPDI mikrokontrolera (PA0) dołączono opcjonalny scalony termometr, przy czym – co dość unikalne w tego typu układach – przewidziano możliwość obsługi dwóch, zupełnie różnych rodzajów sensorów, mianowicie:
- scalonego cyfrowego termometru typu DS18S20 (DS1820) wyposażonego w magistralę 1-wire,
- scalonego analogowego termometru typu LM35 z wyjściem napięciowym.
Detekcja rodzaju podłączonego termometru dokonywana jest jedynie podczas włączania urządzenia, a polega na wysłaniu sygnału RESET na magistralę 1-Wire (wyprowadzenie UPDI) i następującym po nim oczekiwaniu na sygnał PRESENCE wysyłany przez układ Slave (DS18S20). Przy braku odpowiedzi ze strony potencjalnie podłączonego układu Slave, urządzenie matrixClock zakłada, że podłączono analogowy czujnik temperatury, w związku z czym inicjalizuje przetwornik ADC wbudowany w strukturę mikrokontrolera, dzięki któremu w późniejszym czasie dokonuje pomiaru temperatury układu LM35. Oczywiście sposób podłączenia obu rodzajów czujników do portu UPDI mikrokontrolera jest odmienny.