Sisukord:

DIY taskukell: 9 sammu
DIY taskukell: 9 sammu

Video: DIY taskukell: 9 sammu

Video: DIY taskukell: 9 sammu
Video: seeing wife face for first time #shorts 2024, Juuli
Anonim
DIY taskukell
DIY taskukell
DIY taskukell
DIY taskukell

Selles hõivatud maailmas on aja jälgimine hädavajalik parema jõudluse tagamiseks ja harrastajaks olemine, miks mitte teha seade aja jälgimiseks. Tänu tehnoloogiale on olemas seadmeid, mida nimetatakse kellaks, kuid! kui teete asju ise, on rõõm teistsugune, nii et selles juhendatavas näitan teile, kuidas ma selle väikese pisikese kella tegin.

Samm: idee

Idee
Idee

Idee on hoida see võimalikult lihtsana ja kasutada minimaalselt komponente.

  1. Ekraan aja näitamiseks.
  2. Komponent aja jälgimiseks.
  3. Teine komponent võtab aega ja saadab selle kuvamiseks.
  4. Ja jõuallikas.

// Idee vooskeem

2. samm: aju

Aju
Aju

Aju peaks kindlasti olema mikrokontroller, kuna sellel on lihtsa programmeerimise ja väiksema suuruse eelised. Alguses arvasin, et attiny85 sobiks ideaalselt, kuid siis on piiratud GPIO -tihvtide tõttu töötamine keeruline. siis otsustasin minna Atmega328p -ga, mis on saadaval tqfp -pakendis, kuid omades ebaolulist kogemust sellise väikese paketi jootmisel otsustasin minna arduino pro mini -ga. Kuigi see juhatus on ametlikult pensionil, kuid on avatud lähtekoodiga, on need endiselt saadaval.

3. samm: kuvamine

Ekraan
Ekraan
Ekraan
Ekraan
Ekraan
Ekraan

0,91 -tolline OLED -ekraanimoodul oleks ekraanile kena valik, muutes selle kaasaegsemaks, kuid siis on probleemiks selle energiatarve, keskmiselt tarbib see 20 mA, mis oleks aku jaoks kopsakas. Mõtlesin, mida kuvarina kasutada, leidsin selle DVD -ekraani lebamas. Sellel kuvaril on seitsme segmendi ekraanist neli numbrit ja mõned täiendavad LED -id. Kõik LED -id on konfigureeritud tavaliseks katoodiks, nii et nende juhtimiseks peame kasutama meetodit nimega mutliplexing, mis pole midagi muud kui iga numbri ükshaaval sõitmine nii kiiresti, et tundub, et kõik on samal ajal valgustatud. Samuti võib Atmega328 vajuda kuni 20 mA, nii et transistoride vajadus on vähenenud. Iga LED töötab päris hästi 100 oomi juures 3,3 V juures.

4. samm: RTC

RTC
RTC

Arduino pro mini suudab jälgida, kuid probleem on selle energiatarbimises. 3,3 V juures tõmbab see umbes 3 mA sagedusel 8 MHz ja lisaks on meil ka ekraan, mis tarbib ka mahla. Ma valin DS3231 RTC kiibi, kuna seda on lihtne kasutada tänu selle I2C liidesele. Samuti jälgib see aega täpsemalt kui atmega328 ja tarbib isegi vähem energiat.

Samm: kasutajaliides

Kasutajaliides
Kasutajaliides
Kasutajaliides
Kasutajaliides

Liides on lihtne - kasutaja soovib aega, seade annab selleks selle, oleksime võinud kasutada keerulisi asju, näiteks käeliigutusi või sama lihtsaid nupuvajutusi. Nii et kui kasutaja soovib kellaaega teada, vajutage nuppu ja ekraanile kuvatakse kellaaeg. Koodi plaan oli tuvastada, kas nuppu on vajutatud, küsida RTC -lt praegust aega ja näidata seda ekraani kaudu, kuid siis mõistsin, et arduino pro minil on nupp, et ennast lähtestada, siis miks mitte seda kasutada, selle asemel, et kontrollida nupu jaoks võtke lihtsalt praegune aeg ja näidake seda üks kord ning oodake järgmise lähtestamiseni.

6. samm: keerdumine

Nüüd on meil komponendid arduino pro min, DVD -ekraan, DS3231 RTC kiip ja CR2032 nupuelement võimsusmajana, mõtlemata nii palju aku valikule. Nii et vooluringiga mõtlesin välja PCB paigutuse. Ja vahetult enne PCB tellimist tuli mulle meelde üks asi … kui ma arvestan RTC kiibi ja nupuelemendi hoidjaga, siis on need juba DS3231 RTC moodulis joodetud, siis miks raisata ressursse kohandatud trükkplaadi hankimisel, sel juhul on meil lihtsalt jootmisvõimsus, I2C liinid ja DVD -ekraan kuni pro mini. Kui soovite vaadata trükkplaatide paigutust, on see lisatud allpool.

Samm 7: probleem nupuelemendiga

Viga, mille tegin, kui ei andnud aega aku tüübi valimiseks, tasus oma hinna. Kui seade sai arduino uno kaudu toite, nagu ma seda arduino pro mini programmeerimiseks kasutasin, töötas see hästi, kuid kui see sai toite nuppude abil, käitus see imelikult. Olles kulutanud palju aega probleemi uurimisele - tegelikult oli CR2032 võimeline andma voolu kuni 2 mA ja seadme nõuded olid palju suuremad, nii et lõpuks kasutasin selle asemel lipoakut.

8. samm: kood

Kood võib tunduda pikk ja korduv, kuid tegelikult on seda lihtne mõista. Kõik pannakse seadistusjaotisesse, kuna teeme asju ainult üks kord ja ootame järgmise lähtestamiskäsuni.

Koodivoog on kõik initsialiseerida -> võtta RTC -lt praegune aeg -> manipuleerida andmetega nii, et neid saaks kasutada kuvari numbrite multipleksimiseks -> ja seejärel kuvada andmed (aeg) 2 sekundit, multipleksides iga numbri ükshaaval.

9. samm: valmis

Oleksin selle jaoks 3D -korpuse printinud, kuid ilma korpuseta tundub see suurepärane, kuna kõik komponendid on avatud.

Soovitan: