Zegar multimodalny: 4 kroki
Zegar multimodalny: 4 kroki
Anonim
Zegar multimodalny
Zegar multimodalny

Kocham zegary! Szukałem instrukcji do zegara wyświetlającego cyfry rzymskie na ekranie. Kiedy nie dostałem żadnych odpowiednich na bazie arduino, postanowiłem sam je zbudować. W połączeniu z kolorowym wyświetlaczem TFT zastanawiałem się, co jeszcze można wyświetlić i altówkę! myśli o różnych systemach liczbowych studiowanych podczas moich studiów licencjackich (ponad 2 dekady wstecz!) przyszły szybko w: binarny, cyfrowy, ósemkowy i szesnastkowy itp.

To jednak dało mi początek i po długim planowaniu i kodowaniu, oto implementacja!

Charakterystyczne cechy tego zegara:

Wyświetlacz multimodalny, na którym można wyświetlać czas w 5 różnych systemach liczbowych na jednym ekranie lub każdy format liczb wyświetlany na osobnych ekranach wybieranych przyciskiem

Orientacja tarczy zegara może być z 4 stron, a dane na wyświetlaczu można dopasować do orientacji za pomocą przycisku. Później zamierzam użyć czujnika żyroskopowego/przyspieszenia, aby zorientować wyświetlacz w oparciu o stronę, z której jest włączony

Dostępne tryby

Cyfrowy

rzymski

Szesnastkowy (podstawa 16)

ósemkowy (podstawa 8)

Binarny (podstawa 2)

Dla kogoś nowego w tych systemach numeracji oto linki z formatu netBinary:

Format ósemkowy:

Format szesnastkowy:

Format rzymski:

Krok 1: Wymagane części:

Wymagane części
Wymagane części
Wymagane części
Wymagane części
Wymagane części
Wymagane części

Potrzebne przedmioty:

  • Arduino UNO/Nano lub odpowiednik
  • Wyświetlacz TFT: wyświetlacz 1.44 cala 128*128 SPI oparty na IL9163 (zamówiony długi powrót przez aliexpress) (czerwona płytka drukowana)
  • Moduł DS 3231 RTC
  • Przełączniki przyciskowe 2
  • Płytka prototypowa, PCB, przewody łączące
  • Opcjonalnie: lutownica, przewody połączeniowe ogólnego przeznaczenia i odpowiednia obudowa (jeszcze nie zdecydowałem się na ten zegar)

Krok 2: Złóż obwody

Złóż obwody
Złóż obwody

Użyj tych połączeń między RTC i Arduino. W celach informacyjnych zapoznaj się z odręcznym rysunkiem schematycznym.

  • DS3231----Arduino

    • SDAA4
    • SCLA5
    • Vcc 5V (z Arduino)
    • GNDGND (z Arduino)
  • Arduino ---- Wyświetlacz TFT

    • 9A0
    • 10CS
    • 11SDA
    • 13SCK
  • Połączenia Arduino

    • Vcc-5v
    • GND-GND
    • 2GND za pomocą przycisku (przycisk zmiany trybu wyświetlania - Bin/Hex/Dec/All)
    • 3GND za pomocą przycisku (przycisk zmiany orientacji wyświetlacza)
  • Wyświetl połączenia
    • VCC3.3V (z Arduino)
    • GND-GND
    • RESET 3,3 V
    • LED5V (z Arduino)

Krok 3: Prześlij kod

Użyj załączonego pliku.ino dla całego kodu z komentarzami, które nie wymagają wyjaśnień!

Krok 4: Ciesz się swoim dziełem i planuj przyszłe ulepszenia

Ciesz się swoim dziełem i planuj przyszłe ulepszenia
Ciesz się swoim dziełem i planuj przyszłe ulepszenia
Ciesz się swoim dziełem i planuj przyszłe ulepszenia
Ciesz się swoim dziełem i planuj przyszłe ulepszenia
Ciesz się swoim dziełem i planuj przyszłe ulepszenia
Ciesz się swoim dziełem i planuj przyszłe ulepszenia

Masz piękny zegar na biurku i jest dużo miejsca na nowe pomysły

  • Zmień wyświetlacz lub odśwież tylko określone części ekranu, aby przyspieszyć odświeżanie wyświetlacza (ta obecna implementacja czasami nie wyświetla sekundy z powodu odświeżenia całego ekranu)
  • Dodaj płytkę żyroskopu/akcelerometru i powiązany kod, aby dostosować obrót wyświetlacza do orientacji obudowy
  • Puść wodze fantazji…

Wreszcie, jeśli podoba Ci się mój zegar, zagłosuj na niego w trwającym obecnie Konkursie Zegarów