Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Ik hou van klokken! Ik was op zoek naar een instructable voor een klok met Romeinse cijfers op het scherm. Toen ik geen geschikte op arduino-basis kreeg, besloot ik er zelf een te bouwen. In combinatie met een TFT-kleurenscherm, vroeg ik me af wat er nog meer kan worden weergegeven en altviool! gedachten aan verschillende getalsystemen die ik tijdens mijn bachelor of engineering-collegedagen (meer dan 2 decennia terug!) bestudeerde, kwamen binnenstormen: binair, digitaal, octaal en hexadecimaal enz enz
Dit bracht me echter op weg en na veel plannen en coderen, is hier de implementatie t!
Onderscheidende kenmerken van deze klok:
Multimodaal display waar u de tijd in 5 verschillende nummersystemen in één scherm kunt laten weergeven of elk nummerformaat in afzonderlijke schermen kunt laten zien die met een drukknop worden geselecteerd
De oriëntatie van de wijzerplaat kan aan elke 4 zijden zijn en de weergegeven gegevens kunnen met een drukknop op de oriëntatie worden uitgelijnd. Later ben ik van plan een gyro/versnellingssensor te gebruiken om het scherm te oriënteren op basis van de kant waarop het is ingeschakeld
Beschikbare standen
Digitaal
Romeins
Hexadecimaal (Basis 16)
Octaal (Basis 8)
Binair (basis 2)
Voor iemand die nieuw is met deze nummeringssystemen zijn hier de links van het netBinary-formaat:
Octaal formaat:
Hexadecimaal formaat:
Romeins formaat:
Stap 1: Benodigde onderdelen:
Benodigde artikelen:
- Arduino UNO/Nano of gelijkwaardig
- TFT-scherm: 1.44 inch 128*128 SPI-display op basis van IL9163 (lang terug besteld via aliexpress) (RODE PCB)
- DS 3231 RTC-module
- Drukknopschakelaars 2
- Breadboard, PCB, aansluitdraden
- Optioneel: soldeerbout, aansluitdraden voor algemeen gebruik en een geschikte behuizing (ik moet er nog een kiezen voor deze klok)
Stap 2: Monteer het circuit
Gebruik deze verbindingen tussen de RTC & Arduino. Raadpleeg de met de hand opgestelde schematische afbeelding ter referentie.
-
DS3231 ---- Arduino
- SDAA4
- SCLA5
- Vcc 5V (van Arduino)
- GNGDND (van Arduino)
-
Arduino ---- TFT-scherm
- 9A0
- 10CS
- 11SDA
- 13SCK
-
Arduino-verbindingen
- Vcc-5v
- GND-GND
- 2GND via drukknop (knop voor het wijzigen van weergavemodus-Bin/Hex/Dec/All)
- 3GND via drukknop (knop voor het wijzigen van oriëntatieweergave)
-
Verbindingen weergeven
- VCC3.3V (van Arduino)
- GND-GND
- RESET3.3V
- LED5V (van Arduino)
Stap 3: Upload de code
Gebruik het bijgevoegde.ino-bestand voor de hele code met opmerkingen die voor zich spreken!
Stap 4: Geniet van je creatie en plan toekomstige verbeteringen
Je hebt een mooie en geeky klok op je bureau en er is veel ruimte voor nieuwe ideeën
- Verander de weergave of ververs alleen specifieke delen van het scherm om het verversen van het scherm sneller te laten verlopen (deze huidige implementatie mist soms de weergave van een seconde vanwege het verversen van het hele scherm)
- Voeg een gyro-/versnellingsmeterkaart en bijbehorende code toe om de schermrotatie aan te passen aan de oriëntatie van de behuizing
- Laat je fantasie de vrije loop…
Last but not least, als je mijn klok leuk vindt, stem er dan op in de klokkenwedstrijd die momenteel loopt