Sadržaj:

Arduino Matrix sat: 6 koraka
Arduino Matrix sat: 6 koraka

Video: Arduino Matrix sat: 6 koraka

Video: Arduino Matrix sat: 6 koraka
Video: ПЕРВАЯ СХЕМА НА АРДУИНО [Уроки Arduino #4] 2024, Studeni
Anonim
Arduino matrični sat
Arduino matrični sat

Opis:

Izgradite svoj sat pomoću Arduina, matričnog zaslona i modula sata u realnom vremenu (RTC). Ovo je zabavan i jednostavan projekt za koji smatram da je izvrstan za početnike. Sat koristi RTC modul za točno praćenje vremena, kao i dana, mjeseca i godine. Osim toga, modul ima ugrađen senzor temperature. Ovdje možete saznati više o modulu DS3231, kao i o komunikacijskoj sabirnici I2C koja se koristi za njega. Na kraju ćemo koristiti matrični zaslon za naravno prikazivanje vremena, dana u tjednu, mjeseca itd. Ovdje možete saznati više o zaslonu i upravljačkom programu MAX7219 IC u podatkovnoj tablici.

Ovdje možete preuzeti i pdf verziju ovog projekta. To je gotovo isto kao i ovo uputstvo.

[AŽURIRANJE: 22.2.19.] Nemojte koristiti pdf vodič, ažurirao sam ovu uputu, ali te se promjene još uvijek ne odražavaju na pdf.

Korak 1: Skupite komponente

Komponente koje su vam potrebne za ovaj projekt:

  • Max7219 matrični zaslon [kupite ovdje] [podatkovna tablica]
  • RTC DS3231 [Kupi ovdje] [Tehnički list]
  • 3V CR3032 baterija (za DS3231)

Osim toga, trebat će vam Arduino bilo koje vrste (po mogućnosti Nano da biste smanjili veličinu projekta), matična ploča, kratkospojne žice kao i Arduino IDE instaliran na vašem računalu.

Korak 2: Knjižnice

Knjižnice
Knjižnice

Preuzmite sljedeće knjižnice i instalirajte.zip datoteku u Arduino IDE tako što ćete otići na Sketch> Include Library> Add. Zip library

NAPOMENA: VERZIJE SU VAŽNE !

* Prije preuzimanja provjerite imate li ispravne verzije. Preporučio bih preuzimanje svake knjižnice unutar Arduino IDE -a kako biste bili sigurni.

MD_Parola 3.0.1:

MD_MAX72XX 3.0.2:

DS3231 1.0.2:

Alternativno, U Arduino IDE idite na Sketch> Include Library> Manage Libraries, a na traci za pretraživanje unesite: "MAX72XX" i trebali biste vidjeti sljedeće (pogledajte sliku):

Instalirajte samo MD_MAX72XX i MD_Parola. MD_MAXPanel NIJE potreban.

Korak 3: Testiranje komponenti

Nakon instalacije knjižnica, testirajte svoje komponente pojedinačno kako biste bili sigurni da rade ispravno. Slijedite ove korake prije nego što sve spojite

Za testiranje DS3231 RTC modula, spojite DS3231 na Arduino (pogledajte ožičenje u nastavku). Zatim u Arduino IDE idite na Datoteke> Primjeri> DS3231> DS3231_Test i prenesite skicu. Otvorite Serijski monitor i provjerite dobivate li točan datum, vrijeme, dan itd.

Da biste testirali matrični zaslon, prvo ga spojite na Arduino (pogledajte ožičenje u nastavku). Zatim u Arduino IDE idite na Datoteke> Primjeri> MD_Parola> Parola_HelloWorld i prenesite skicu. Trebali biste vidjeti HELLO ispisan na zaslonu, a može i ne mora biti ispisan unatrag. Ako je tekst unatrag, morate promijeniti sljedeći redak:

#define HARDWARE_TYPE MD_MAX72XX:: PAROLA_HW

Do

#define HARDWARE_TYPE MD_MAX72XX:: FC16_HW

Ponovno učitajte skicu i problem bi trebao biti riješen.

Sada kada smo testirali naše komponente, spremni smo sve spojiti!

Korak 4: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje

Pogledajte dijagram ili shemu ili tablicu

Korak 5: KOD

Kôd preuzmite ovdje

Napomena: Koristio sam kôd koji je izvorno proizveo Electronic Projects, ali sam ga izmijenio tako da podržava trenutne (u vrijeme dovršetka) knjižnice.

Značajke sata:

Sat je automatski postavljen da prikazuje vrijeme u 24 -satnom formatu, ali se lako može promijeniti na 12 sati. Sat će također prikazivati temperaturu (i u Celzijusima i u Fahrenheitu). Uključio sam i značajku pod nazivom "Način spavanja" koja je postavljena na "ISKLJUČENO" (Za detalje pogledajte Sleep Mode u nastavku).

12 -satni format: Da biste postavili sat da prikazuje vrijeme u 12 -satnom formatu, morat ćete komentirati redak 88

hour = Clock.gethour (h12, PM); // 24 -satni format

I komentirajte retke 93 do 100

if (Clock.getHour (h12, PM)> = 13 || Clock.getHour (h12, PM) == 0)

{h = Sat.getHour (12, PM) - 12; } else {h = Clock.getHour (h12, PM); }

Stanje mirovanja:

Ovo je značajka koja pomaže smanjiti svjetlinu sata, posebno tijekom sati u kojima spavamo. Mislim da se ne želiš probuditi usred noći i zaslijepljen ovim satom. Vrlo je svijetla čak i kad je na najnižoj postavci. Da biste omogućili način mirovanja, odkomentirajte retke 177 do 184

if (h == 12 || h <8) // Vremenski intervali (u ovom slučaju od 12 do 8 sati) {P.setIntensity (0); // Postavite svjetlinu zaslona na najnižu postavku} else {P.setIntensity (6); // Postavite svjetlinu zaslona na 6 (15 je najsvjetlija)}

Napomena: Naišao sam na problem pri korištenju mirovanja dok je sat postavljen na 12 sati. Primijetit ćete da će raditi dva puta dnevno budući da se 8 i 20 sati tumače kao 8. Dakle, ako postavite način mirovanja na aktivan od 21 do 7 sati, bit će aktivan i od 9 do 19 sati. Međutim, do ovog problema ne dolazi ako je sat postavljen na 24 -satni način rada.

Korak 6: Zaključak

Svaka čast !!! Imate radni sat. Ovako je moja ispala [Galerija satova]. Nadam se da ste ne samo naučili nešto više o komponentama i kodiranju, već da ste uživali u putu do tamo. Podijelite sa mnom svoja razmišljanja o ovom vodiču na [email protected]. Ovo je zapravo moj prvi projektni vodič i nadao sam se da vam je dobro poslužio. Nadam se da ću stvoriti još mnogo vodiča. Osim toga, ako imate bilo kakvih pitanja, prijedloga i/ili poboljšanja na projektu, slobodno mi pošaljite poruku.

Preporučeni: