Od Red. EdW: Warto zauważyć, iż dokładność i wskazanie z dokładnością do milisekundy, to dwie różne rzeczy. Osobną sprawą jest sens i potrzeba milisekundowej dokładności. W przypadku zegara czasu rzeczywistego RTC (Real Time Clock) wbudowanego w różnego rodzaju systemy, taka, a nawet większa dokładność i rozdzielczość może być wymagana. Inaczej sprawa wygląda, jeśli to zegar, na którym po prostu odczytujemy bieżący czas. Również nieco inaczej to wygląda, jeśli ów czasomierz ma pracować w trybie stopera.
Możliwość budowy zegara pokazującego czas z rozdzielczością milisekundową zrodziła się w chwili, gdy w zasięgu ręki pokazały się takie moduły jak trzy i pół calowy (8,9 cm) wyświetlacz TFT ILI 9488 i mikrokontroler ESP32. Wyświetlacz ten może pracować w kilku trybach. Tu wykorzystano tryb 8-bitowy. Wówczas interfejs między mikrokontrolerem i wyświetlaczem angażuje 12 linii GPIO. Istotne jest natomiast to, że zarówno mikrokontroler jak i transmisja danych jest na tyle szybka, że budowa zegara pokazującego godziny, minuty, sekundy i milisekundy stała się możliwa. Wyświetlacz ILI9488 jest kompatybilny z Arduino. W handlu dostępne są wersje, które jest bardzo łatwo połączyć z płytką Arduino Uno. Niestety, moc obliczeniowa mikrokontrolera na Arduino jest niewystarczająca.
Aby sprostać wymaganiom narzuconym przez „milisekundowy clock” sięgnięto po moduł mikrokontrolera ESP32 oraz zegar RTC w postaci układu scalonego DS3231. Zegar prezentowany w tym projekcie przewyższa możliwości każdego innego zegara, który pewnie masz w swoim mieszkaniu. Wyświetla nie tylko datę, dokładną godzinę i dzień tygodnia, także wskazanie milisekundowe nie jest jedynym atutem tego zegara. Może on również pracować w trybie stopera. A wskazanie czasu pokazane jest zarówno w postaci zegara analogowego jak i cyfrowego. Ponadto, zegar ten pokaże także temperaturę w pomieszczeniu, w którym się znajduje.