Obsah:
- Krok 1: Zhromaždite komponenty
- Krok 2: Knižnice
- Krok 3: Testovanie vašich komponentov
- Krok 4: Zapojenie
- Krok 5: KÓD
- Krok 6: Záver
Video: Maticové hodiny Arduino: 6 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Popis:
Zostavte si hodiny pomocou Arduina, maticového displeja a modulu Real Time Clock (RTC). Je to zábavný a jednoduchý projekt, ktorý je podľa mňa skvelý pre začiatočníkov. Hodiny používajú modul RTC na presné sledovanie času, ako aj dňa, mesiaca a roku. Modul má navyše vstavaný snímač teploty. Tu sa môžete dozvedieť viac o module DS3231 a o komunikačnej zbernici I2C tu. Nakoniec použijeme bodový maticový displej na zobrazenie času, dňa v týždni, mesiaca atď. Viac informácií o displeji tu a ovládači MAX7219 IC nájdete v nižšie uvedenom technickom liste.
Tu si môžete stiahnuť aj pdf verziu tohto projektu. Je to prakticky rovnaké ako tento návod.
[UPDATE: 2/22/19] Nepoužívajte sprievodcu pdf, aktualizoval som tento návod, ale tieto zmeny sa zatiaľ v pdf neprejavili.
Krok 1: Zhromaždite komponenty
Komponenty, ktoré budete potrebovať pre tento projekt:
- Max7219 Bodový maticový displej [Kúpiť tu] [Datasheet]
- RTC DS3231 [Kúpte si tu] [Technický list]
- 3V batéria CR3032 (pre DS3231)
Okrem toho budete potrebovať Arduino akéhokoľvek druhu (najlepšie Nano na minimalizáciu veľkosti projektu), dosku na vedenie, prepojovacie káble a Arduino IDE nainštalované vo vašom počítači.
Krok 2: Knižnice
Stiahnite si nasledujúce knižnice a nainštalujte súbor.zip do Arduino IDE tak, že prejdete na Sketch> Include Library> Add. Zip library
UPOZORNENIE: NA VERZIACH záleží !!
* Pred sťahovaním si overte, či máte správne verzie. Odporúčam pre istotu stiahnuť každú knižnicu z Arduino IDE.
MD_Parola 3.0.1:
MD_MAX72XX 3.0.2:
DS3231 1.0.2:
Prípadne
V Arduino IDE prejdite na Skica> Zahrnúť knižnicu> Spravovať knižnice a do vyhľadávacieho panela zadajte: „MAX72XX“a mali by ste vidieť nasledujúce (pozri obrázok):
Nainštalujte iba modely MD_MAX72XX a MD_Parola. MD_MAXPanel NIE je potrebný.
Krok 3: Testovanie vašich komponentov
Po inštalácii knižníc otestujte svoje súčasti jednotlivo, aby ste sa presvedčili, že fungujú tak, ako by mali. Pred zapojením všetkého dohromady postupujte podľa týchto krokov
Ak chcete otestovať modul RTC DS3231, pripojte DS3231 k Arduinu (pozri zapojenie nižšie). Potom v Arduino IDE prejdite na Súbory> Príklady> DS3231> DS3231_Test a nahrajte skicu. Otvorte sériový monitor a skontrolujte, či dostávate správny dátum, čas, deň atď.
Ak chcete otestovať maticový displej, najskôr ho pripojte k Arduinu (pozri Zapojenie nižšie). Ďalej v Arduino IDE prejdite na Súbory> Príklady> MD_Parola> Parola_HelloWorld a nahrajte skicu. Na displeji by ste mali vidieť HELLO vytlačené a môže, ale nemusí byť vytlačené dozadu. Ak je text dozadu, musíte zmeniť nasledujúci riadok:
#define HARDWARE_TYPE MD_MAX72XX:: PAROLA_HW
Komu
#define HARDWARE_TYPE MD_MAX72XX:: FC16_HW
Nahrajte skicu znova a problém by mal byť vyriešený.
Teraz, keď sme testovali naše súčiastky, sme pripravení prepojiť všetko dohromady!
Krok 4: Zapojenie
Pozrite si diagram alebo schému alebo tabuľku
Krok 5: KÓD
Získajte kód tu
Poznámka: Pôvodne som použil kód od Electronic Projects, ale upravil som ho tak, aby podporoval aktuálne (v čase dokončenia) knižnice.
Vlastnosti hodín:
Hodiny sa automaticky nastavujú tak, aby ukazovali čas v 24 -hodinovom formáte, ale dajú sa ľahko zmeniť na 12 -hodinový. Hodiny tiež zobrazujú teplotu (v stupňoch Celzia aj Fahrenheita). Zahrnul som aj funkciu s názvom „Režim spánku“, ktorá je nastavená na „VYPNUTÉ“(podrobnosti nájdete v časti Režim spánku nižšie).
12 -hodinový formát: Ak chcete, aby hodiny nastavovali čas v 12 -hodinovom formáte, musíte komentovať riadok 88
hodina = Hodiny.hodina (h12, PM); // 24hodinový formát
A odkomentujte riadky 93 až 100
ak (Clock.getHour (h12, PM)> = 13 || Clock.getHour (h12, PM) == 0)
{h = Clock.getHour (12, PM) - 12; } else {h = Clock.getHour (h12, PM); }
Režim spánku:
Táto funkcia pomáha znižovať jas hodín, najmä počas hodín, v ktorých spíme. Nemyslím si, že sa chcete prebúdzať uprostred noci a zaslepení týmito hodinami. Je veľmi jasný, aj keď je na najnižšom nastavení. Ak chcete povoliť režim spánku, odkomentujte linky 177 až 184
if (h == 12 || h <8) // Časové intervaly (v tomto prípade od 12:00 do 8:00) {P.setIntensity (0); // Nastavenie jasu displeja na najnižšie nastavenie} else {P.setIntensity (6); // Nastavte jas displeja na 6 (15 je najjasnejší)}
Poznámka: Pri používaní režimu spánku, keď sú hodiny nastavené na 12 -hodinový režim, som narazil na problém. Všimnete si, že bude bežať dvakrát denne, pretože 8:00 a 20:00 sa interpretujú ako 8. Ak teda nastavíte režim spánku na aktívny od 21.00 do 7.00, bude tiež aktívny od 9.00 do 19.00. K tomuto problému však nedochádza, ak sú hodiny nastavené na 24 -hodinový režim.
Krok 6: Záver
Gratulujem!!! Máte pracovné hodiny. Takto dopadol ten môj [Galéria hodín]. Dúfam, že ste sa nielen dozvedeli niečo viac o komponentoch a kódovaní, ale že sa vám cesta tam aj páčila. Podeľte sa so mnou o svoje myšlienky na tohto sprievodcu na adrese [email protected]. Toto je v skutočnosti môj prvý sprievodca projektom a dúfal som, že vám dobre poslúži. Dúfam, že vytvorím oveľa viac sprievodcov. Okrem toho, ak máte akékoľvek otázky, návrhy alebo vylepšenia projektu, neváhajte mi napísať.
Odporúča:
WiFi riadené maticové LED diódy s LED pásikom: 3 kroky (s obrázkami)
WiFi riadené maticové LED diódy s LED pásikom: Programovateľné LED pásy, napr. založené na WS2812, sú fascinujúce. Aplikácie sú rozmanité a rýchlo môžete dosiahnuť pôsobivé výsledky. A nejakým spôsobom sa zdá, že budovanie hodín je ďalšou doménou, o ktorej veľa premýšľam. Počnúc určitými skúsenosťami s
Zadné maticové svetlo na bicykel: 5 krokov
Zadné maticové svetlo na bicykel: Ahoj všetci! Vždy ma fascinovali LED diódy a spôsob, akým svietia, je to tak fascinujúce, najmä maticové pásy 8 x 8 a RGB. Už dlho som chcel pre svoj bicykel postaviť zadné svetlo na bicykel a teraz, keď som schopný postaviť o
LED maticové hodiny ESP8266: 8 krokov (s obrázkami)
LED maticové hodiny ESP8266: Maticové hodiny LED ESP8266 Jednoduché LED maticové hodiny založené na obľúbenom ESP8266 s modulom Hodiny reálneho času a synchronizáciou času cez WiFi zo servera NTP. NOVINKA! K dispozícii je aj verzia ESP32
Maticové hodiny LED ESP32: 8 krokov
ESP32 LED Matrix Clock: Toto je pokračovanie projektu ESP8266 LED Matrix Clock. Autor pôvodného kódu ho aktualizoval pre ESP32 (veľká vďaka schreibfaul1!), Takže som sa rozhodol aktualizovať aj hodiny, ktoré som už urobil
8x8 LED maticové hodiny a upozornenie na vniknutie: 4 kroky (s obrázkami)
8x8 LED maticové hodiny a upozornenie na vniknutie: V tomto návode sa pozrieme na to, ako zostaviť 8x8 LED maticové hodiny aktivované detekciou pohybu. Tieto hodiny je možné použiť aj ako zariadenie proti vniknutiu, ktoré v prípade pohybu pošle varovnú správu detegovaný telegramovým robotom !!! Urobíme s dvoma rôznymi