Sisukord:
- Tarvikud
- Samm: ühendage komponendid
- 2. samm: 3D -prinditud osad
- 3. samm: kood
- Samm 4: Kasutamine ja seaded
Video: Pensionikell / loendamis- / dn -kell: 4 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Mul oli sahtlis paar sellist 8x8 LED-maatriksekraani ja mõtlesin, mida nendega teha. Inspireerituna teistest juhenditest, tekkis mul idee ehitada loendur alla/üles kuva, mis loendab tulevase kuupäeva/kellaajani ja kui sihtaeg möödub, loe sellest üles. Tegin selle nüüd oma pensionikellaks riiulil istudes.
Idee see pudelisse panna oli pigem juhus, kui mõtlesin ümbrisele. Teised panid laevad pudelisse, miks mitte ka kella?
Samuti tahtsin panna kella järgima suveaega ja muidugi meeles pidada seadeid ja aega, kui see vooluvõrgust lahti ühendatakse. Toitan kella USB kaudu, mis muudab selle ümberprogrammeeritavaks, kui soovite midagi muud teha või lihtsalt koodile funktsioone lisada. Kood on üsna lihtne ja võib kasutada ka palju optimeerimist. Pean tunnistama, et ma ei hoolitsenud RAM -i tarbimise eest hästi. Kui mul on aega ja motivatsiooni, tulen selle juurde tagasi.
Tarvikud
1. Arduino Nano
2. RTC (kasutasin tavalist DS3231, millel on ka EEPROM)
3. 12x 8x8 punktmaatriksi moodul. (Mul olid neljamoodulid, mida on lihtsam rivistada)
4. LDR ekraani heleduse reguleerimiseks
5. Takisti 10 kOhm
6. Kondensaator 5x 100 uF summutades naelu ekraanilt
7. 8x8 moodulite kontrasti suurendamiseks kasutasin tumedat toonitud "Window Film". Ekraanil kuvatakse LED -id valgete punktidena, kui need ei põle. Aknakile muudab selle läikivaks mustaks.
Samm: ühendage komponendid
Ekraani kokkupanekuks kasutasin kolme nelikuvarist. Kuupäeva kuvamiseks kaldkriipsudega ja kellaajaga koolonitega vajame ruumi 8 tähemärgi jaoks. Kasutades tüüpilist 5x7 fonti, vajame kuus 8x8 plokki rea kohta. Lõikasin ühe nelikplokist pooleks ja paigutasin need kaheks reaks kuue plokiga, nagu on näidatud leivalaua skeemil.
2. samm: 3D -prinditud osad
Ekraani kahe rea hoidmiseks ja pudelisse paigutamiseks printisin ekraani raami jaoks ümmargused kaugusrõngad. Lisasin allpool kasutatud failid. Nende printimiseks ilma toeta on need jagatud osadeks. Ekraanipildil on näidatud kaks ekraani raami külge liimitud rõngast. Pudelikaela kaanel on kolm nuppu, mis võimaldavad kuvamisrežiimide vahel vahetada ning praeguse ja sihtaja seadistamiseks. Pudelikaela kate trükkisin TPU -s, mis võimaldas USB -kaabli kaane sisse libistada ilma pistikuid katkestamata ja mõne traadimähisega kinni siduda. Unustasin mainida, et kasutasin 1,5 -liitrist veinipudelit, mille lõikasin alt ära. Kõik trükitavad osad sobivad 20x20 cm (8x8 tolli) printerivoodile.
3. samm: kood
Arduino kood kasutab mõnda tavaliselt kasutatavat raamatukogu.
MD_MAX72xx
SPI
Traat
RTClib
Ajavöönd
TimeLib
INO -failis on paar rida, mis võivad vajada muutmist:
Rida 38: #define HARDWARE_TYPE MD_MAX72XX:: FC16_HW <- sõltub 8x8 moodulist ja selle suunast
FC16_HW asemel võiks see olla üks järgmistest:
- MD_MAX72XX:: PAROLA_HW
- MD_MAX72XX:: GENERIC_HW
- MD_MAX72XX:: ICSTATION_HW
- MD_MAX72XX:: FC16_HW
Kood kasutab USA Kesk -Ameerika aja seadeid ja vajab kohandamist teiste ajavööndite jaoks.
Rida 53/54:
TimeChangeRule myDST = {"CDT", teine, püha, märts, 2, -300}; // suveaeg UTC -5TimeChangeRule mySTD = {"CST", First, Sun, Nov, 2, -360}; // Standardaeg UTC -6
Seda on lihtne reguleerida. Nimi CST/CDT on lihtsalt viide. Ma ei kuva kolme tähega lühendit, nii et see pole oluline. Järgmised parameetrid viitavad sellele, millisel kuu päeval lüliti toimub. Reguleerimine toimub minutites, seega töötavad ka +/- 30 minutit reguleerivad kohad.
RTC töötab sisemiselt UTC-ajal, mis võimaldab ajavöönditeegal töötada ettenähtud viisil. Teil võib tekkida küsimus, miks kood viitab vanemale DS1307 kiibile, vastupidiselt minu kasutatud kiibile, kuid see pole oluline. Raamatukogu töötab hästi mõlema kiibiga. DS1307 kaldub triivima rohkem kui DS3132. eelistatud kell on DS3132. Neile, kes soovivad Interneti -aega lisada, teeb ESP8266 selle töö üsna lihtsalt ära. See võib muuta RTC vananenuks. Kui teete neid muudatusi, kasutage sihtaja salvestamiseks Arduino EEPROM -i, mina kasutasin selleks RTC EEPROM -i.
Samm 4: Kasutamine ja seaded
Nuppe on kolm
1. Menüü / seaded
2. Üles
3. Alla
Menüünupp võimaldab liikuda kolme ekraani tüübi vahel: praegune aeg, sihtaeg, delta aeg. Delta -aeg näitab päevade arvu, HH/MM/SS praeguse aja ja sihtaja vahel. See näitab t- ja loendamist, kui sihtmärk on tulevikus või t+, ja loendamist üles, kui sihtmärk on minevikus.
Praeguse või sihtaja reguleerimiseks valige praeguse aja või sihtaja kuvamine. Kellaaja muutmiseks hoidke menüünuppu 2 sekundit all ja vabastage, mis viib teid seadistusrežiimi. Naabruses olev "/" või ":" muutub "" -iks, et näidata, millist numbrit reguleerite. Kasutage üles/alla nuppe, et reguleerida individuaalseid hh/mm/ss ja mm/dd/yy. Ma ei lisanud seadet, et vahetada kk/pp/aaa ja pp/kk/aaa vahel, see vajab koodi muutmist või võib -olla on keegi valmis seda funktsiooni lisama.
Märkate, et kui liigutate minuteid üle 59 või alla 00, kohandub ka tunninäit. sama kehtib sekundite, tundide ja päevade kohta, mis muudavad järgmise kõrgema väärtuse, kui ületate selle numbri maksimumist alla 0 või üle selle. Tegin seda selleks, et vältida üksikute kuude erinevate piiride programmeerimist ja kui veebruar vajab liigaastal 29 päeva. Aega korrigeeritakse tegelikult epohhiajas, sekundites alates 1. jaanuarist 1970.
Lisasin loendamise näitamiseks lihtsa video. Tahtsin teha need nagu pöörleva ekraani. Kui soovite muudatuse kestust reguleerida, annab INO rida 69 mõned võimalused muudatuse kiirendamiseks või aeglustamiseks. 120 ms paneks numbrid kerima piisavalt aeglaselt, kuna see oleks pidevalt töötav ratas.
Loodan, et teile meeldis see õpetlik.
Patrick Geschwindner
Soovitan:
DIY 37 LED Arduino ruleti mäng: 3 sammu (piltidega)
DIY 37 Leds Arduino rulett Mäng: Rulett on kasiinomäng, mis on nime saanud prantsuse sõna järgi, mis tähendab väikest ratast
Kuidas: Raspberry PI 4 peata (VNC) installimine RPI-pildistaja ja piltidega: 7 sammu (koos piltidega)
Kuidas: Raspberry PI 4 peata (VNC) installimine Rpi-pildistaja ja piltidega: kavatsen seda Rapsberry PI-d kasutada oma blogis hunniku lõbusate projektide jaoks. Vaadake seda julgelt. Tahtsin uuesti oma Raspberry PI kasutamist alustada, kuid mul polnud uues asukohas klaviatuuri ega hiirt. Vaarika seadistamisest oli tükk aega möödas
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
Polt - DIY juhtmeta laadimise öökell (6 sammu): 6 sammu (piltidega)
Bolt - DIY juhtmeta laadimise öökell (6 sammu): Induktiivsed laadimised (tuntud ka kui juhtmeta laadimine või juhtmeta laadimine) on traadita jõuülekande tüüp. See kasutab kaasaskantavatele seadmetele elektrit pakkumiseks elektromagnetilist induktsiooni. Kõige tavalisem rakendus on Qi traadita laadimisst
Arvuti demonteerimine lihtsate sammude ja piltidega: 13 sammu (piltidega)
Arvuti demonteerimine lihtsate sammude ja piltidega: see on juhis arvuti demonteerimiseks. Enamik põhikomponente on modulaarsed ja kergesti eemaldatavad. Siiski on oluline, et oleksite selles osas organiseeritud. See aitab vältida osade kaotamist ja ka kokkupanekut