Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Aš myliu laikrodžius! Ieškojau laikrodžio, kuris ekrane rodytų romėniškus skaitmenis. Kai „arduino“bazėje negavau tinkamų, nusprendžiau ją pasigaminti pats. Kartu su spalvotu TFT ekranu man buvo įdomu, ką dar galima rodyti ir altas! mintys apie įvairias skaičių sistemas, studijuotas inžinerijos kolegijos laikais (daugiau nei prieš 2 dešimtmečius!), skubėjo: dvejetainė, skaitmeninė, aštuonkava ir šešioliktainė ir tt
Tačiau tai mane paskatino ir po ilgo planavimo ir kodavimo čia yra įgyvendinimas!
Skiriamieji šio laikrodžio bruožai:
Daugiarūšis ekranas, kuriame galite rodyti laiką 5 skirtingose skaičių sistemose viename ekrane arba kiekvieną skaičių formatą, rodomą atskirais mygtukais pasirinktais ekranais
Laikrodžio rodyklės orientacija gali būti bet kurioje 4 pusėje, o rodomi duomenys gali būti suderinti su padėtimi naudojant mygtuką. Vėliau ketinu naudoti giroskopo/pagreičio jutiklį, kad ekranas būtų orientuotas pagal įjungtą pusę
Galimi režimai
Skaitmeninis
Romanas
Šešioliktainis (16 bazė)
Aštuonis (8 bazė)
Dvejetainis (2 bazė)
Naujiems šiose numeracijos sistemose esantiems žmonėms pateikiamos nuorodos iš „netBinary“formato:
Oktalo formatas:
Romėniškas formatas:
1 veiksmas: reikalingos dalys:
Reikalingi daiktai:
- „Arduino UNO/Nano“arba lygiavertis
- TFT ekranas: 1,44 colio 128*128 SPI ekranas, pagrįstas IL9163 (užsakytas ilgą laiką per „aliexpress“) (RED PCB)
- DS 3231 RTC modulis
- Mygtuko jungikliai 2
- Duonos lenta, PCB, jungiamieji laidai
- Neprivaloma: lituoklis, bendrosios paskirties jungiamieji laidai ir tinkamas gaubtas (aš dar nenusprendžiau šio laikrodžio)
2 žingsnis: Surinkite grandinę
Naudokite šias jungtis tarp RTC ir „Arduino“. Žiūrėkite rankiniu būdu sudarytą scheminį paveikslėlį.
-
DS3231 ---- Arduino
- SDAA4
- SCLA5
- Vcc 5V (iš Arduino)
- GNDGND (iš Arduino)
-
„Arduino“-TFT ekranas
- 9A0
- 10CS
- 11SDA
- 13 SCK
-
„Arduino“jungtys
- Vcc-5v
- GND-GND
- 2GND paspaudus mygtuką (ekrano režimo keitimo mygtukas-dėklas/šešiakampis/išjungimas/visi)
- 3GND per mygtuką (ekrano orientacijos keitimo mygtukas)
-
Rodyti jungtis
- VCC3.3V (iš „Arduino“)
- GND-GND
- RESET3.3V
- LED5V (iš „Arduino“)
3 veiksmas: įkelkite kodą
Visą kodą naudokite pridėtame.ino faile su savaime suprantamais komentarais!
4 žingsnis: mėgaukitės kūryba ir planuokite būsimus patobulinimus
Ant jūsų stalo yra gražus ir šaunus laikrodis ir yra daug vietos naujoms idėjoms
- Pakeiskite ekraną arba atnaujinkite tik tam tikras ekrano dalis, kad ekrano atnaujinimas vyktų greičiau (šis dabartinis įgyvendinimas kartais praleidžia sekundės rodymą dėl viso ekrano atnaujinimo)
- Pridėkite giroskopo/akselerometro plokštę ir susijusį kodą, kad ekrano sukimasis atitiktų gaubto orientaciją
- Leiskite savo vaizduotei paleisti lauką…
Paskutinis, bet ne mažiau svarbus dalykas: jei jums patinka mano laikrodis, balsuokite už jį šiuo metu vykstančiame laikrodžių konkurse