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, Novembar
Anonim
Arduino Matrix sat
Arduino Matrix sat

Opis:

Izgradite svoj sat pomoću Arduina, matričnog ekrana i modula sata u realnom vremenu (RTC). Ovo je zabavan i jednostavan projekt za koji smatram da je odličan za početnike. Sat koristi RTC modul za precizno 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 I2C komunikacijskoj sabirnici koja se koristi za njega. Na kraju ćemo koristiti Dot Matrix Display za naravno prikazivanje vremena, dana u sedmici, mjeseca itd. Više o prikazu ovdje i upravljačkom programu MAX7219 IC možete pronaći u donjoj tablici s podacima.

Ovdje možete preuzeti i pdf verziju ovog projekta. Praktično je isto kao i ovo uputstvo.

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

Korak 1: Skupite komponente

Komponente koje su vam potrebne za ovaj projekat:

  • Max7219 matrični ekran [Kupite ovdje] [Tehnički list]
  • 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: Biblioteke

Biblioteke
Biblioteke

Preuzmite sljedeće biblioteke 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 biblioteke 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 upišite “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 instaliranja biblioteka, testirajte svoje komponente pojedinačno kako biste bili sigurni da rade kako treba. 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 da li dobivate 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 odštampan na ekranu, a može i ne mora biti ispisan unatrag. Ako je tekst unatrag, morate promijeniti sljedeći red:

#define HARDWARE_TYPE MD_MAX72XX:: PAROLA_HW

To

#define HARDWARE_TYPE MD_MAX72XX:: FC16_HW

Ponovo otpremite 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 kako bih podržao trenutne (u trenutku završetka) biblioteke.

Karakteristike sata:

Sat je automatski podešen da prikazuje vreme u 24 -časovnom formatu, ali se lako može promeniti na 12 sati. Sat će također prikazivati temperaturu (i u Celzijusima i u Fahrenheitu). Uključio sam i funkciju koja se zove 'Sleep Mode' koja je postavljena na '' OFF '' (Za detalje pogledajte Sleep Mode u nastavku).

12 -časovni format: Da biste podesili sat da prikazuje vrijeme u 12 -časovnom formatu, morat ćete komentirati red 88

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

I komentirajte redove 93 do 100

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

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

Način spavanja:

Ovo je funkcija koja pomaže u smanjenju svjetline sata, posebno tokom sati u kojima spavamo. Mislim da se ne želiš probuditi usred noći i zaslijepljen ovim satom. Veoma je svetao čak i kada je na najnižem položaju. Da biste omogućili način mirovanja, uklonite komentare iz redova 177 do 184

if (h == 12 || h <8) // Vremenski intervali (u ovom slučaju od 12 do 8 sati) {P.setIntensity (0); // Postavite svjetlinu ekrana na najnižu postavku} else {P.setIntensity (6); // Postavite svjetlinu ekrana 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:00 i 20:00 tumače kao 8. Dakle, ako postavite način mirovanja na aktivan od 21:00 do 7:00, bit će aktivan i od 9:00 do 19:00. Međutim, do ovog problema ne dolazi ako je sat postavljen na 24 -satni način rada.

Korak 6: Zaključak

Congrats !!! 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 u stvari moj prvi vodič kroz projekte 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čuje se: