Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Milujem hodiny! Hľadal som návod na hodiny s rímskymi číslicami na obrazovke. Keď som nedostal žiadne vhodné na arduino základni, rozhodol som sa, že si jeden postavím sám. V spojení s farebným TFT displejom ma zaujímalo, čo ešte je možné zobraziť a viola! prišli myšlienky o rôznych číselných systémoch študovaných v dňoch bakalárskeho inžinierstva (viac ako 2 desaťročia späť!): Binárne, digitálne, osmičkové a hexadecimálne atď.
To ma však začalo a po dlhom plánovaní a kódovaní je tu implementácia t!
Charakteristické vlastnosti týchto hodín:
Multimodálny displej, kde môžete mať čas zobrazený v 5 rôznych číselných systémoch na jednej obrazovke alebo každý formát čísla na oddelených obrazovkách vybraných tlačidlom
Orientácia ciferníka môže byť na všetkých 4 stranách a údaje na displeji môžu byť zarovnané s orientáciou pomocou tlačidla. Neskôr mám v úmysle použiť gyroskopický/akceleračný senzor na orientáciu displeja podľa strany, na ktorej je zapnutý
Dostupné režimy
Digitálne
Roman
Šestnástkový (základ 16)
Octal (základňa 8)
Binárne (základňa 2)
Pre niekoho nového v týchto systémoch číslovania sú tu odkazy z formátu netBinary:
Osmičkový formát:
Šestnástkový formát:
Rímsky formát:
Krok 1: Potrebné diely:
Potrebné položky:
- Arduino UNO/Nano alebo ekvivalent
- TFT displej: 1,44 palcový 128*128 SPI displej založený na IL9163 (objednávaný dlhý chrbát cez aliexpress) (ČERVENÁ DPS)
- Modul DS 3231 RTC
- Tlačidlové spínače 2
- Breadboard, PCB, prepojovacie vodiče
- Voliteľné: spájkovačka, spojovacie vodiče na všeobecné účely a vhodný kryt (pre tieto hodiny sa ešte rozhodnem)
Krok 2: Zostavte obvod
Použite tieto spojenia medzi RTC a Arduino. Referenciu nájdete v ručne zostavenom schematickom obrázku.
-
DS3231 ---- Arduino
- SDAA4
- SCLA5
- Vcc 5V (od Arduina)
- GNDGND (od Arduina)
-
Arduino ---- TFT displej
- 9A0
- 10CS
- 11SDA
- 13SCK
-
Pripojenie Arduino
- Vcc-5v
- GND-GND
- 2GND pomocou tlačidla (tlačidlo na zmenu režimu zobrazenia-zásobník/šesťhran/dec/všetko)
- 3GND pomocou tlačidla (tlačidlo zmeny orientácie displeja)
- Pripojenia displeja
- VCC3.3V (od Arduina)
- GND-GND
- RESET3,3V
- LED5V (od Arduina)
Krok 3: Nahrajte kód
Priložený súbor.ino použite na celý kód s komentármi, ktoré sú samozrejmé!
Krok 4: Užite si svoju tvorbu a naplánujte si budúce vylepšenia
Na stole máte krásne a podivné hodiny a je tu veľa priestoru pre nové nápady
- Zmeňte zobrazenie alebo obnovte iba konkrétne časti obrazovky, aby sa obnovenie displeja zrýchlilo (táto aktuálna implementácia niekedy vynechá zobrazenie sekundy kvôli obnoveniu celej obrazovky)
- Pridajte dosku gyroskopu/akcelerometra a príslušný kód na úpravu otáčania displeja tak, aby zodpovedalo orientácii krytu
- Popustite uzdu svojej predstavivosti …
V neposlednom rade, ak sa vám moje hodiny páčia, hlasujte za ne v aktuálnej súťaži Hodiny