Obsah:

Hodiny, LCD displej, infračervené nastavenie: 6 krokov
Hodiny, LCD displej, infračervené nastavenie: 6 krokov

Video: Hodiny, LCD displej, infračervené nastavenie: 6 krokov

Video: Hodiny, LCD displej, infračervené nastavenie: 6 krokov
Video: HAYLOU GS: Haylou's DIRTY LITTLE SECRET // Is It a Copy of the SoundPEATS WATCH 2? 2024, Júl
Anonim
Hodiny, LCD displej, infračervené nastavenie
Hodiny, LCD displej, infračervené nastavenie
Hodiny, LCD displej, infračervené nastavenie
Hodiny, LCD displej, infračervené nastavenie

Vybudujte si hodiny v reálnom čase, ktoré udržia čas v činnosti v priebehu niekoľkých minút za rok. Kód a komponenty je možné ľahko prepracovať do iných projektov.

Tento projekt vyžaduje minimálne množstvo kabeláže a žiadne spájkovanie. Časomerač sú hodiny reálneho času DS3231. Čas je zobrazený na lacnom 1602 LCD displeji. Oba moduly používajú komunikáciu I2C. Pri pripájaní k Arduinu I2C používa iba 2 vodiče na modul. Používam Arduino Nano, pretože krásne sedí na doske. Nasledujúce pokyny budú fungovať s Arduino Uno, pretože má pre tento projekt rovnaké čísla pinov ako Nano. Ďalším komponentom je infračervený prijímač. Umožňuje vám použiť bežný diaľkový ovládač, napríklad diaľkový ovládač k televízoru, na nastavenie času rovnako, ako by ste to urobili na našej inteligentnej televízii. Na pripojenie infračerveného prijímača k Arduinu je potrebný iba jeden vodič.

Prvým krokom je otestovanie Arduina a jeho zapojenie na dosku. Nasledujúce kroky sú navrhnuté tak, aby fungovali nezávisle. Každý krok obsahuje pokyny na zapojenie a testovanie. Pri vytváraní projektov zapojím a otestujem každý komponent, aby som potvrdil, že funguje. Pomáha to pri integrácii viacerých komponentov, pretože viem, že každá práca a ja sa môžem zamerať na požiadavky integrácie.

Tento návod vyžaduje, aby ste mali nainštalované IDE Arduino. Musíte tiež mať základné znalosti na stiahnutie programu skici Arduino z odkazov v tomto projekte, vytvorenia adresára pre program (názov adresára rovnaký ako názov programu). Ďalším krokom je načítanie, zobrazenie a úprava programu v IDE. Potom nahrajte program pomocou kábla USB na dosku Arduino.

Zásoby

  • Doska mikroovládača Nano V3 ATmega328P CH340G pre Arduino. Ako alternatívu môžete použiť Uno.
  • Hodiny DS3231 v reálnom čase a batéria CR2032.
  • 1602 LCD s modulom I2C
  • Infračervený prijímač a diaľkové ovládanie. Použil som súpravy modulov IR bezdrôtového diaľkového ovládania, ktoré boli dodané s infračerveným prijímačom a infračerveným diaľkovým ovládaním.
  • Breadboard
  • Drôtené káble
  • 5 voltový nástenný adaptér

Diely som kúpil na eBay, väčšinou od distribútorov v Hongkongu alebo Číne. Americkí distribútori majú niekedy rovnaké alebo podobné diely za rozumné ceny a rýchlejšie dodanie. Dodanie čínskych dielov trvá 3 až 6 týždňov. Všetci distribútori, ktorých som použil, boli spoľahliví.

Približné náklady: Nano 3 doláre, DS3231 dolár 1 dolár, LCD 3 doláre, infračervená súprava 1 dolár, doštička 2 doláre, balík 40 káblových káblov 1 dolár, 1 dolár za 5 voltový nástenný adaptér. Celkovo asi 11 dolárov. Všimnite si toho, že som kúpil Nano a LCD s kolíkmi na doske už spájkovanými na mieste, pretože moje spájkovacie schopnosti sú slabé. K hodinovej batérii som kúpil 5 balení lítiových batérií CR2032 za približne 1,25 dolára. Kúpil som si tiež 5 balení DS3231s, pretože mám rád časové kusy. Tento projekt používa 1 breadboard. Kúpil som balík 3 breadboard za približne 7 dolárov; výhodnejšia ponuka ako kúpiť jednotlivú dosku.

Krok 1: Pridajte Arduino Nano na Breadboard

Pridajte Arduino Nano na Breadboard
Pridajte Arduino Nano na Breadboard

Zapojte Arduino Nano do Breadboardu. Alebo, ak chcete, môžete na tento projekt použiť Arduino Uno; obaja na tento projekt používajú rovnaké piny. Pripojte Nano (alebo Uno) k počítaču pomocou kábla USB.

Pripojte napájanie a uzemnenie z Arduina k napájaciemu panelu nepájivého poľa. Pripojte kolík Arduino 5+ k pozitívnej lište nepájivého poľa. Pripojte kolík Arduino GRN (uzemnenie) k zápornému (uzemňovaciemu) panelu nepájivého poľa. Toto budú používať ostatné komponenty.

Stiahnite si a spustite základný testovací program Arduino: arduinoTest.ino. Pri spustení programu sa integrované LED svetlo zapne na 1 sekundu a potom na 1 sekundu zhasne. Zverejňujú sa aj správy, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ Inicializoval digitálny pin integrovaný LED na výstup. LED nesvieti. ++ Prejsť na slučku. + Počítadlo slučky = 1 + Počítadlo slučky = 2 + Počítadlo slučky = 3…

Pri cvičení zmeňte časové oneskorenie na blikajúcom svetle, nahrajte zmenený program a potvrďte zmenu.

Na vyššie uvedenej fotografii je 140 -dielna spájkovacia prepojovacia krabica na nepájivú dosku, ktorú môžete dostať za 3 až 5 dolárov. Robia dosky úhľadnejšie, ktoré používajú dlhé káble na krátke spojenia.

Krok 2: Pridajte hodinový modul DS3231 a pripojte ho k Arduinu

Pridajte hodinový modul DS3231 a pripojte ho k Arduinu
Pridajte hodinový modul DS3231 a pripojte ho k Arduinu

Pripojte modul hodín k doske na chlieb. Pripojte kolík GND hodinového modulu k uzemňovacej lište nepájivej dosky. Pripojte kolík VCC hodinového modulu k kladnému panelu lišty nepájivého poľa. Pripojte pin hodinového modulu SDA (dátový) k kolíku A4 Arduino (dátový pin I2C). Pripojte pin hodinového modulu SCL (hodiny) k kolíku A5 Arduino (hodinový kolík I2C).

Do Arduino IDE nainštalujte knižnicu hodín DS3231. Vyberte položku Nástroje/Spravovať knižnice. Filtrujte svoje vyhľadávanie zadaním „rtclib“. Vyberte RTClib od spoločnosti Adafruit (pre odkaz, odkaz na knižnicu).

Stiahnite si a spustite základný testovací program: clockTest.ino. Pri spustení programu sa uverejňujú správy o čase, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ Sada hodín. ++ Prejsť na slučku. ---------------------------------------- + Aktuálny dátum a čas: 2020/3/ 22 (nedeľa) 11: 42: 3 + Aktuálny dátum a čas: 2020/3/22 (nedeľa) 11: 42: 4 + Aktuálny dátum a čas: 2020/3/22 (nedeľa) 11: 42: 5…

Pri cvičení použite rtc.adjust () na nastavenie času a dátumu, nahrajte zmenený program a potvrďte zmenu.

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Prvý jarný deň 2020.

Krok 3: Pridajte modul LCD displeja 1602 a pripojte ho k Arduinu

Pridajte modul LCD displeja 1602 a pripojte ho k Arduinu
Pridajte modul LCD displeja 1602 a pripojte ho k Arduinu

Zapojte modul LCD do nepájivej dosky. Pripojte kolík GND hodinového modulu k uzemňovacej lište nepájivej dosky. Pripojte kolík VCC hodinového modulu k kladnému panelu lišty nepájivého poľa. Pripojte pin hodinového modulu SDA (dátový) k kolíku A4 Arduino (dátový pin I2C). Pripojte pin hodinového modulu SCL (hodiny) k kolíku A5 Arduino (hodinový kolík I2C).

Do Arduino IDE nainštalujte knižnicu LCD 1602. Vyberte položku Nástroje/Spravovať knižnice. Filtrujte svoje vyhľadávanie zadaním „LiquidCrystal“. Vyberte LiquidCrystal I2C od Franka de Barbander (odkaz, odkaz na knižnicu).

Stiahnite si a spustite základný testovací program: lcd1602Test.ino. Pri spustení programu sa uverejňujú správy o čase, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ LCD pripravený na použitie. +++ Prejsť na slučku. + počítadlo = 1 + počítadlo = 2 + počítadlo = 3 …

Pri cvičení zmeňte správy na displeji LCD, nahrajte zmenený program a potvrďte zmenu.

Krok 4: Pridajte infračervený prijímač a pripojte ho k Arduinu

Pridajte infračervený prijímač a pripojte ho k Arduinu
Pridajte infračervený prijímač a pripojte ho k Arduinu

Zapojte káblové vodiče samec do samec do infračerveného prijímača (dutinky). Pripojte uzemňovací kolík hodinového modulu k uzemňovacej lište nepájivej dosky. Pripojte napájací kolík hodinového modulu k kladnému panelu lišty nepájivého poľa. Pripojte výstupný kolík infračerveného prijímača k kolíku Arduino A1.

Pripojte infračervený prijímač, kolíky zhora zľava doprava:

Vľavo najviac (vedľa X) - nano kolík A1 stred - 5V vpravo - zem

A1 + - - Pripojenia nano kolíkmi

| | | -Kolíky infračerveného prijímača --------- | S | | | | --- | | | | | | --- | | | ---------

Do Arduino IDE nainštalujte infračervenú knižnicu. Vyberte položku Nástroje/Spravovať knižnice. Filtrujte svoje vyhľadávanie zadaním „IRremote“. Vyberte IRremote od Shirriffa (pre odkaz, odkaz na knižnicu).

Stiahnite si a spustite základný testovací program: infraredReceiverTest.ino. Pri spustení programu namierte diaľkový ovládač na prijímač a stlačte rôzne tlačidlá, napríklad číslo od 0 do 9. Výstupom sú (vytlačené) sériové správy, ktoré je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ Inicializoval sa infračervený prijímač. ++ Prejsť na slučku. + Kláves OK - Prepnúť + Kláves> - nasledujúci + Kláves < - predchádzajúci + Kláves hore + Kláves dole + Kláves 1: + Kláves 2: + Kláves 3: + Kláves 4: + Kláves 6: + Kláves 7: + Kláves 8: + Kláves 9: + Kľúč 0: + Kľúč * (Návrat) + Kľúč # (Ukončiť)

Pri cvičení si vytlačené hodnoty pozrite pomocou diaľkového ovládača televízora. Potom môžete program upraviť tak, aby používal hodnoty v príkaze prepínača funkcie infraredSwitch (). Napríklad stlačte kláves „0“a získajte hodnotu pre svoj diaľkový ovládač, napríklad „0xE0E08877“. Potom pridajte do príkazu switch prípad ako v nasledujúcom útržku kódu.

prípad 0xFF9867:

prípad 0xE0E08877: Serial.print ("+ Kľúč 0:"); Serial.println (""); prestávka;

Krok 5: Načítajte projekt hodín Arduino Sketch Program a otestujte ho

Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho
Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho
Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho
Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho
Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho
Načítajte program Hodiny Project Arduino Sketch Program a vyskúšajte ho

Teraz, keď sú všetky komponenty pridané na dosku, zapojené a testované; je čas načítať hlavný hodinový program a spustiť ho. Hodinový program získava čas z hodinového modulu, zobrazuje čas na LCD displeji a umožňuje vám nastaviť čas pomocou infračerveného diaľkového ovládača.

Stiahnite a spustite program hodín projektu: clockLcdSet.ino.

Po spustení programu zobrazí čas DS3231 na obrazovke LCD 1602. Správy je možné zobraziť v nástrojoch Arduino IDE Tools/Serial Monitor.

+++ Nastavenie.

+ LCD súprava. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Hodiny nastavené a synchronizované s programovými premennými. + Povolený infračervený prijímač. ++ Prejsť na slučku. + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…

Namierte diaľkový ovládač na prijímač a stlačte tlačidlo so šípkou doprava. Na nastavenie sa zobrazí rok. Viackrát stlačte tlačidlo so šípkou doprava, aby ste zistili, či môžete nastaviť rok, mesiac, deň, hodinu, minútu a sekundy. Ak chcete nastaviť hodnotu času, prejdite na hodnotu. Pomocou šípok hore a dole nastavte zobrazovanú hodnotu. Potom pomocou klávesu „OK“nastavte hodnotu hodín. Naraz je nastavená jedna hodnota.

Krok 6: Externé napájanie

Externý napájací zdroj
Externý napájací zdroj

Teraz, keď sú vaše hodiny testované a fungujú, môžete ich odpojiť od počítača a použiť nezávislé napájanie. Pre jednoduchosť používam 5 -voltový nástenný adaptér, ktorý sa dá kúpiť zhruba za dolár, a USB kábel, ďalší dolár. Kábel spája Arduino s nástenným adaptérom +5V. Pretože napájacie a uzemňovacie kolíky Arduino sú prepojené s doskou, napájajú sa tým ostatné komponenty.

Pretože je to jednoduché a nízke náklady, používam rovnakú kombináciu na napájanie ďalších projektov.

Dúfam, že ste boli úspešní a že sa vám páčilo stavať hodiny s infračerveným ovládaním.

Odporúča: